标签: c sizeof
char c = 'A'; printf("%d\n",sizeof(c));// output = 1 printf("%d\n",sizeof('A')); // output = 4
为什么sizeof运算符为同一个字符提供不同的输出?请帮忙
sizeof
答案 0 :(得分:6)
c是char类型的变量;它的大小是1个字节。
c
char
'A'是一个int字面量 - 不要问我为什么标准会这样说。它的大小在您的平台上为4个字节(与sizeof(1)相同)。
'A'
int
sizeof(1)