关于sizeof问题
#include <stdio.h>
int main()
{
int i;
printf("'a'=%d\n",sizeof('a'));
printf("int=%d\n",sizeof(char));
return 0;
}
结果是:
2
1
怎么回事。
int main()
{
int i;
printf("'a'=%d\n",sizeof('a'));
printf("int=%d\n",sizeof(char));
return 0;
}
结果是:
2
1
怎么回事。
作者: wacs5 发布时间: 2010-07-25
那个'a'被当做int处理了(你的例子中,是Short,不然,一般在32位机器上要得到4的)
作者: folklore 发布时间: 2010-07-25
我是TC编译器。
作者: wacs5 发布时间: 2010-07-25
QUOTE:
那个'a'被当做int处理了(你的例子中,是Short,不然,一般在32位机器上要得到4的)
folklore 发表于 2010-07-25 21:54
folklore 发表于 2010-07-25 21:54
他的例子里也是int,只不过int的长度是2字节。
作者: 聪聪知不道 发布时间: 2010-07-25
QUOTE:
他的例子里也是int,只不过int的长度是2字节。
聪聪知不道 发表于 2010-07-25 22:07
聪聪知不道 发表于 2010-07-25 22:07
QUOTE:
我是TC编译器。
果然~~~,TC的Int是2Byte的
PS:现在还有人用TC,TC的生命力好强啊~~
作者: folklore 发布时间: 2010-07-25
楼主找个GCC下载安装吧,TC太古老了吧~
作者: folklore 发布时间: 2010-07-25