PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : printf uint64_t



gorba
11-12-2006, 09:39
kann ich einen uint64_t datentype beim printf ganz normal mit %d ausgeben?

peschmae
11-12-2006, 17:44
Hab ich noch nie gemacht, aber ich würde eher ein l (kleines L) für "(unsigned) long int" oder ein ll (kleine LL) für "(unsinged) long long int" versuchen.

%d liefert fast sicher nur die ersten (niederwertigen auf LE) 32 bit.

Falls du kannst: benutz C++ und die <<'s

MfG Peschmä

gorba
12-12-2006, 11:19
hehe zum glück kann ich c++ nicht benutzen ;)
Muss mich mit c "begnügen". Dachte ich mir auch das er nicht alle bits ausgibt da %d auf einen int macht der nur 32 bit hat.
Danke für den tipp mit l und ll, werds gleich mal ausprobieren

peschmae
12-12-2006, 14:51
Oh, das sollte dann wohl %ld bzw %lld heissen; das scheinen "nur" Längenmodifizierer zu sein, keine eigenen unabhängigen Ausdrücke.

MfG Peschmä

gorba
12-12-2006, 14:59
Oh, das sollte dann wohl %ld bzw %lld heissen; das scheinen "nur" Längenmodifizierer zu sein, keine eigenen unabhängigen Ausdrücke.

hab ich gemerkt, thx