linux下32位机与64位机基本数据类型长度有什么区别

这篇文章主要介绍了linux下32位机与64位机基本数据类型长度有什么区别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

基本数据类型

数据类型 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:跟机器字长一样。

感谢你能够认真阅读完这篇文章,希望小编分享的“linux下32位机与64位机基本数据类型长度有什么区别”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注行业资讯频道,更多相关知识等着你来学习!