2009-09-29 4 views

Antwort

30

%d Das Format ist eine Ganzzahl mit Vorzeichen (dezimal). Ganzzahlen werden mit two's complement gespeichert, was bedeutet, dass das höherwertige Bit (8000 0000) gewissermaßen das Vorzeichen des Wertes anzeigt.

Zählung nach unten von 3 Werte sind:

0000 0003 = 3 
0000 0002 = 2 
0000 0001 = 1 
0000 0000 = 0 
FFFF FFFF = -1 
FFFF FFFE = -2 

usw.

Wenn Sie FFFF FFFF als große positive Zahl angezeigt werden, verwenden Sie die %u (unsigned) Format.

+0

oh, was ist das% für lange? oder unsigniert? – user105033

+0

% u - nur zur Antwort hinzugefügt :) –

+3

int ist% d, unsigned ist% u, long int ist% ld, lang unsigned ist% lu –

4

Die Werte, die Sie erwähnen, sind die Zweierkomplement-Darstellung von -1 und -2

Suchen two's complement

3

Das erste Bit auf einer Ganzzahl mit Vorzeichen ist das Zeichen, so dass die höchste Zahl, die ist gespeichert werden könnte 0xEFFFFFFFF.