LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 892|回复: 6

数据类型的问题

[复制链接]
发表于 2003-3-1 02:28:10 | 显示全部楼层 |阅读模式
在LINUX下的C里,LONG的长度到底有多少?

如果要表示超过这个长度的数,还有什么数据类型可以用?是不是要自己编程处理?

例如:我要求一个数的阶乘?
发表于 2003-3-1 08:56:02 | 显示全部楼层
这个和硬件平台有关。可以编程把long的长度打印出来,用sizeof(long)即可。
 楼主| 发表于 2003-3-1 18:40:41 | 显示全部楼层
多谢指教,

我用了你的方法,打印出了sizeof(long)和sizeof(int)。

但奇怪的是为什么它们的结果是一样的?

都是4?
发表于 2003-3-1 18:49:22 | 显示全部楼层
int也是4?
 楼主| 发表于 2003-3-1 20:53:34 | 显示全部楼层
#include <stdio.h>
int main()
{
printf("The Int is:%d\n",sizeof(int));
printf("The Long is:%d\n",sizeof(long));
return 0;
}

结果:
The Int is:4
The Long is:4
发表于 2003-3-1 21:34:26 | 显示全部楼层
在我的机器上也是这样。可能编译器把int类型都处理成4个字节了吧。
发表于 2003-3-2 05:23:11 | 显示全部楼层
当然是4了,32位CPU,32位操作系统,不是4是几.
gcc好像有long long(两个long)类型,64位的,
有符号正数到9223372036854775807,够大了吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表