Als «sizeof» getaggte Fragen

sizeof bezieht sich auf den Standard-C / C ++ - Operator zum Zurückgeben der Größe eines Ausdrucks oder Datentyps in Byte.

505
Warum erhöht sizeof (x ++) x nicht?

Hier ist der Code, der in Dev C ++ - Fenstern kompiliert wurde: #include <stdio.h> int main() { int x = 5; printf("%d and ", sizeof(x++)); // note 1 printf("%d\n", x); // note 2 return 0; } Ich erwarte x6 nach Ausführung von Note 1 . Die Ausgabe lautet jedoch: 4 and 5 Kann jemand...

109
Größe eines einzelnen Strukturelements in C.

Ich versuche eine Struktur zu deklarieren, die von einer anderen Struktur abhängig ist. Ich möchte verwenden sizeof, um sicher / pedantisch zu sein. typedef struct _parent { float calc ; char text[255] ; int used ; } parent_t ; Jetzt möchte ich eine Struktur deklarieren child_t, die dieselbe...

103
Warum sind C-Zeichen-Literale Ints anstelle von Zeichen?

In C ++ , sizeof('a') == sizeof(char) == 1. Dies ist intuitiv sinnvoll, da 'a'es sich um ein Zeichenliteral handelt und sizeof(char) == 1wie im Standard definiert. In C jedoch sizeof('a') == sizeof(int). Das heißt, es scheint, dass C-Zeichenliterale tatsächlich ganze Zahlen sind. Weiß jemand...

96
Warum ist sizeof int falsch, während sizeof (int) richtig ist?

Wir wissen, dass dies sizeofein Operator ist, der zum Berechnen der Größe eines Datentyps und Ausdrucks verwendet wird. Wenn der Operand ein Ausdruck ist, können die Klammern weggelassen werden. int main() { int a; sizeof int; sizeof( int ); sizeof a; sizeof( a ); return 0; } Die erste Verwendung...

80
Wie kann diese Struktur eine Größe von == 0 haben?

Es gibt einen alten Beitrag, der nach einem Konstrukt fragt, für das er zurückkehren sizeofwürde 0. Es gibt einige Highscore-Antworten von Benutzern mit hohem Ansehen, die besagen, dass standardmäßig kein Typ oder keine Variable eine Größe von 0 haben kann. Und ich stimme dem zu 100% zu. Es...