当我在C中运行下面的程序时,输出结果为4
。
#include <stdio.h>
//using namespace std;
int main()
{
printf("%d", sizeof('a'));
return 0;
}
但是当我在C ++中运行下面的代码时,输出结果为1
。
#include <iostream>
using namespace std;
int main()
{
printf("%d", sizeof('a'));
return 0;
}
您能否解释为什么我为相同的代码获得不同的输出?
在C中,字符表示形式(如'a'
)的类型为int
。因此,sizeof
运算符返回整数的大小。