C++中字长,字符大小,整数大小和字节之间的关系是什么?
该标准要求某些类型具有最小大小(short至少为16位,int至少为16位等),并且某些类型的组是有序的(sizeof(int)
> = sizeof(short)
> = sizeof(char)
).
在C++中,char必须足够大才能在实现的基本字符集中保存任何字符.
int
具有"执行环境架构所建议的自然大小".注意,这意味着,一个int不不需要在尺寸至少32位.实现int
16位是常见的(想想嵌入式MS-DOS).
以下内容摘自C++ 98和C99标准的各个部分:
long int
必须至少与...一样大 int
int
必须至少与...一样大 short
short
必须至少与...一样大 char
请注意,它们可以都是相同的大小.
另外(假设有两个补码实现):
long int
必须至少为32位
int
必须至少为16位
short
必须至少为16位
char
必须至少为8位