今天在论坛看到有人询问一下代码的输出
#include
void main()
{
printf("%d" ,sizeof( '\0'));
}
我一看 '\0'不就是一个char么 ,输出 1
结果答案是4
看到楼下有评论
------------------------------------------------------------------------------------
翻了书《c和指针》,发现C和C++对于'\0'有不同解释。
C中,'\0'称为字符常量,类型总为int类型。
C++中,'\0'称为字符字面值,类型总为char类型。
------------------------------------------------------------------------------------