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

时间:2022-05-04 20:13:17

基本数据类型 

数据类型

32位

64位

char

1

1

int

4

4

long

4

8

float

4

4

double

8

8

long double

12

16

long long

8

8


可以指定int的长度:

数据类型

32位

64位

int32_t

4

4

int64_t

8

8


类似的,还有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:跟机器字长一样。