栈中分配的存储空间(带有内部、自动或链接的标识符)应限于 2G 字节或更少。
C 类型 |
LP64 (-m64) 大小 |
LP64 对齐 |
ILP32 (-m32) 大小 |
ILP 32 对齐 |
---|---|---|---|---|
整数 |
||||
_Bool char signed char unsigned char |
1 |
1 |
1 |
1 |
short signed short unsigned short |
2 |
2 |
2 |
2 |
int signed int unsigned int enum |
4 |
4 |
4 |
4 |
long signed long unsigned long |
8 |
8 |
4 |
4 |
long long signed long long unsigned long long |
8 |
8 |
8 |
4 (x86) / 8 (SPARC) |
指针 |
||||
any-type * any-type (*) () |
8 |
8 |
4 |
4 |
浮点 |
||||
float double long double |
4 8 16 |
4 8 16 |
4 8 12 (x86) / 16 (SPARC) |
4 4 (x86) / 8 (SPARC) 4 (x86) / 8 (SPARC) |
复合 |
||||
float _Complex double _Complex long double _Complex |
8 16 32 |
4 8 16 |
8 16 24 (x86) / 32 (SPARC) |
4 4 (x86) / 8 (SPARC) 4 (x86) / 16 (SPARC) |
虚数 |
||||
float _Imaginary double _Imaginary long double _Imaginary |
4 8 16 |
4 8 16 |
4 8 12 (x86) / 16 (SPARC) |
4 4 (x86) / 8 (SPARC) 4 (x86) / 16 (SPARC) |