字长模型LP64,ILP64,LLP64,ILP32,LP32

字长(数据)模型是编译器用来确定基本数据类型长度的。

LP64,ILP64,LLP64是64位平台上的字长模型,ILP32和LP32是32位平台上的字长模型。

根据命名,L-long,P-pointer,LL-longlong,64-上述类型字长64,32-上述类型字长32。

所以,字长模型的主要不同是这三种基本类型长度。

基本数据类型长度如下图(来自:http://www.runoob.com/cprogramming/c-data-types.html)

字长模型LP64,ILP64,LLP64,ILP32,LP32_第1张图片

结论:
1、32位Windows和类Unix使用ILP32字长模型,64位Windows使用LLP64模型,64位类Unix使用LP64字长模型。
2、根据1,long在32位和64位Windows上永远是4字节,在32位类Unix上是4字节,在64位类Unix上是8字节。
3、其他基本类型Windows和类Unix字长一致。

32位Windows和类Unix(UNIX/Linux/MacOS X)均采用ILP32字长(数据)模型。

64位Windows采用的是LLP64数据模型,64位采用的是LP64数据模型。

转载于:https://www.cnblogs.com/comor/p/10577128.html

你可能感兴趣的:(字长模型LP64,ILP64,LLP64,ILP32,LP32)