Maison > développement back-end > C++ > Qu'est-ce qui détermine la taille d'un `bool` en C ?

Qu'est-ce qui détermine la taille d'un `bool` en C ?

Linda Hamilton
Libérer: 2024-12-18 19:10:17
original
148 Les gens l'ont consulté

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

Taille définie par l'implémentation de bool dans la norme C

Bien que la norme du langage C indique explicitement les tailles des types fondamentaux comme char, signé char , et unsigned char mesurant 1 octet chacun, la définition de sizeof(bool) est laissée aux implémenteurs discrétion.

La norme souligne cette ambiguïté au §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.
Copier après la connexion

Cela signifie que la taille de bool n'est pas garantie d'être de 1 octet, et la norme inclut un note de bas de page (69) indiquant explicitement :

sizeof(bool) is not required to be 1.
Copier après la connexion

Par conséquent, l'implémentation peut décider de la taille de bool en fonction de divers facteurs, tels que les contraintes d'architecture ou de plate-forme. Par conséquent, sizeof(bool) peut varier selon les différents compilateurs et systèmes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal