Heim > Backend-Entwicklung > C++ > Was bestimmt die Größe eines „bool' in C?

Was bestimmt die Größe eines „bool' in C?

Linda Hamilton
Freigeben: 2024-12-18 19:10:17
Original
147 Leute haben es durchsucht

What Determines the Size of a `bool` in C  ?

Implementierungsdefinierte Größe von Bool im C-Standard

Obwohl der C-Sprachstandard explizit die Größen grundlegender Typen wie char, signiertes char angibt , und unsigned char jeweils 1 Byte groß sein müssen, bleibt die Definition von sizeof(bool) den Implementierern überlassen. Diskretion.

Der Standard betont diese Mehrdeutigkeit in §5.3.3/1:

sizeof(char), sizeof(signed char) and sizeof(unsigned char) are 1; the result of sizeof applied to any other fundamental type is implementation-defined.
Nach dem Login kopieren

Dies bedeutet, dass die Größe von bool nicht garantiert 1 Byte beträgt und der Standard a enthält Fußnote (69) gibt ausdrücklich Folgendes an:

sizeof(bool) is not required to be 1.
Nach dem Login kopieren

Daher kann die Implementierung die Größe von Bool basierend auf verschiedenen Faktoren entscheiden, wie z. B. Architektur oder Plattformbeschränkungen. Daher kann sizeof(bool) je nach Compiler und System variieren.

Das obige ist der detaillierte Inhalt vonWas bestimmt die Größe eines „bool' in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage