可能是重复问题:
在C/C++中字符'a'的大小
以下程序:
#include <stdio.h>
int main()
{
printf("%d\n", sizeof('\0'));
printf("%d\n", sizeof(0));
}
使用gcc编译的输出
4
4
使用g++编译
1
4
为什么会发生这种情况?我知道这不是编译器的问题,而是C和C++之间的差异,但原因是什么?为什么会发生这种情况?我知道这不是编译器的问题,而是C和C++之间的差异,但原因是什么?