1
void main()
{
printf("%d\n",sizeof('1'));
}
void main()
{
char a='1';
printf("%d\n",sizeof(a));
}
输出:1
有人能说为什么它是不同的?
void main()
{
printf("%d\n",sizeof('1'));
}
void main()
{
char a='1';
printf("%d\n",sizeof(a));
}
输出:1
有人能说为什么它是不同的?
在C中,字符文字是int
类型。
请注意,这是在C++中更改的,其中字符文字具有明显的类型char
。
在C中,字符文字类型为int
,换句话说,sizeof('1')
与sizeof(int)
相同。
虽然sizeof(a)
是真正的sizeof(char)
。