Bestimmen der Größe von „bool“ in C
Der C-Standard definiert die Größe des Datentyps „bool“ nicht explizit. Dies bedeutet, dass die Größe von „bool“ der Implementierung des Compilers überlassen bleibt.
Implementierungsdefinierte Größe
Der C-Sprachstandard gibt an, dass die Größe von any Der grundlegende Typ ist mit Ausnahme von „char“, „signed char“ und „unsigned char“ durch die Implementierung definiert. Hierzu gehört auch der Datentyp „bool“. Daher kann die Größe von „bool“ je nach verwendetem Compiler variieren.
Weitere Klarstellung
In §5.3.3/1 des C-Standards heißt es wird ausdrücklich darauf hingewiesen, dass „das Ergebnis der Anwendung von sizeof auf einen anderen Grundtyp durch die Implementierung definiert ist.“ Fußnote 69 betont diesen Punkt weiter, indem sie besagt, dass „sizeof(bool) nicht unbedingt 1 sein muss.“
Schlussfolgerung
Die Größe von „bool“ in C beträgt Es ist nicht garantiert, dass es 1 ist. Es handelt sich um ein durch die Implementierung definiertes Merkmal, was bedeutet, dass seine Größe je nach Compiler variieren kann.
Das obige ist der detaillierte Inhalt vonWie groß ist eine boolesche Variable (bool) in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!