linux下32位机与64位机基本数据类型长度区别介绍

基本数据类型

数据类型32位64位
char11
int44
long48
float44
double88
long double1216
long long88

可以指定int的长度:

数据类型32位64位
int32_t44
int64_t88

类似的,还有uint32_t和uint64_t

其它数据类型

1,size_t:跟机器字长一样;
2,off_t:32位机器下默认是32位长,这时无法对大于4G的文件偏移操作,这时off_t = __off_t;如果想进行大于4G的文件偏移操作,可以在程序中加入头文件之前定义
这时off_t = __off64_t,具体定义在unistd.h中;对于64位机,默认就是64位长。

#define _FILE_OFFSET_BITS 64

3,ino_t:跟机器字长一样。

发表评论

暂无评论
成为第一个留下见解的人