Red de conocimientos sobre prescripción popular - Remedios caseros - El número de bytes de int en lenguaje C

El número de bytes de int en lenguaje C

En lenguaje C, si un número aparece solo en el código, 0 sizeof(0) se tratará como una constante int.

Entonces son 4 bytes.

Si es '0', esta es la letra inglesa, que es el tipo char, y debería ser 1 byte. Esto no se debe necesariamente a que el estándar ASCII-C (es decir, el estándar C89, el último es el estándar IOS-C) requiera que el tipo se actualice a int al procesar datos de tipo de caracteres, pero no todos los compiladores siguen esta regla. Entonces, el compilador vc6.0 y el compilador gcc de Linux sizeof('0 ') es 4, el compilador cc de Unix-AIX sizeof('0 ') es 1 (probé estos compiladores en estos diferentes sistemas).

Además, si es 0.0, será una constante de tipo doble de forma predeterminada y sizeof(0.0) es 8.

Por supuesto, me refiero a la situación de los sistemas de 32 bits. El tipo int de los sistemas de 32 bits es de 4 bytes.