ubuntu 64-bit is LP64?



我了解到64位有几种型号:LP64、ILP64、LLP64。我想问一下,它们中的哪一个与ubuntu 64位(以及这个ubuntu中使用的gcc)一起使用?

答案是Ubuntu 64位提供I32LP64编译。

您可以通过以下代码自行检测:

$ cat t.c
#include <stdio.h>
#include <limits.h>
int main(void) { 
  printf("%zu %zu %zun", 
    CHAR_BIT*sizeof(int),
    CHAR_BIT*sizeof(long),
    CHAR_BIT*sizeof(void*));
}
$ gcc t.c && ./a.out 
32 64 64

最新更新