Hirdetés
- Androidos fejegységek
- „Ezt a sorozatot emberek készítették!”
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Milyen monitort vegyek?
- Vezetékes FEJhallgatók
- Újra nekifeszül az asztali konzolok piacának a Valve
- Kezdő fotósok digitális fényképei
- Azonnali notebookos kérdések órája
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Amazon Kindle
Új hozzászólás Aktív témák
-
válasz
bandi0000
#3494
üzenetére
12-nél a 1100 helyes (1*8+1*4+0*2+0*1)
Vagy fordítva rakod be a tömbbe (végétől kezdve és a végére teszel egy '\0'-t (string vége karakter C-ben) és onnan iroatod ki ahova visszafele eljutottál (ezt csinálja az én példám). Vagy feltöltöd a tömböt rendesen és kiiratáskor címezed meg a végétől és egy csökkenő ciklusban egyesével kiírod a számokat (de ugye csak annyit, amennyit beleraktál).
Harmadik megoldás - valahogy így (fordító és ellenőrzés nélkül):
bitmaszk és bitshift
char* binaryConv(int szam){
char* binary = "0000|0000|0000|0000";
int bitmask = 0x4000; //16 384
int counter = 0;
while (bitmask > 0){
if (szam & bitmask) binary[counter] = '1'; // ha az adott bit 1, akkor a stringbe is azt helyettesítjük
counter++;
if (counter%4 == 0) counter++; //átléptetni az elválaszókat
bitmask = bitmask >> 1; //bitmaszkot eggyel jobbra tolni
}1) Csak 4 jegyű számokig működik (azaz pontosabban 16384-ig)
2) Amit visszaad ki lehet irattatni printf-fel...
return binary;
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Törött Apple iMac 19.2 i5-8500 Radeon Pro 560X 4GB 16GB 256GB SSD 21.5" 4K Retina
- Honor 200 Lite 256GB, Kártyafüggetlen, 1 Év Garanciával
- HP ZBook Fury G7 Intel Core i7-10850H
- Apple Macbook Air 13,6 M4 10C CPU/16GB/256GB - Égkék - HUN - 55 Ciklus - 100% akku , 2,5 év gari
- S. Mario PC! Hogy fusson a Super Mario! I5 14400F / RX 6900XT 16GB / 32GB DDR5 / 1TB SSD
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


