Naudodamas printf galiu spausdinti kaip šešiaženklį arba aštuonženklį skaičių. Ar yra formato žyma, leidžianti spausdinti kaip dvejetainį arba bet kokios bazės skaičių?
Naudoju gcc.
printf("%d %x %o\n", 10, 10, 10); //prints "10 A 12\n"
print("%b\n", 10); // prints "%b\n"
Kai kurios paleidimo programos palaiko "%b", nors tai nėra standartas.
Taip pat žr. įdomią diskusiją čia:
http://bytes.com/forum/thread591027.html
HTH
C standartinėje bibliotekoje nėra formatavimo funkcijos, kuri leistų išvesti tokią dvejetainę reikšmę. Visos printf šeimos palaikomos formatavimo operacijos skirtos žmogui skaitomam tekstui.
Nėra standartinio ir nešiojamojo būdo.
Kai kurios realizacijos pateikia itoa(), tačiau daugumoje jų to nebus, be to, jos sąsaja šiek tiek prasta. Tačiau kodas yra už nuorodos ir turėtų leisti jums gana lengvai įgyvendinti savo formatatorių.