char 要素
|
8 ビット幅のシングルバイト。1 バイトで境界整列される。
|
short 整数
|
ハーフワード (2 バイト、つまり 16 ビット)。2 バイトで境界整列される。
|
int
|
32 ビット (4 バイトまたは 1 ワード)、4 バイト境界で整列される。
|
long
|
v8 および x86 では 32 ビット (4 バイトまたは 1 ワード)、4 バイト境界で整列される。
v9 では 64 ビット (8 バイトまたは 2 ワード)、8 バイト境界で整列される。
|
pointer
|
v8 および x86 では 32 ビット (4 バイトまたは 1 ワード)、4 バイト境界で整列される。
v9 では 64 ビット (8 バイトまたは 2 ワード)、8 バイト境界で整列される。
|
long long [long long は、-Xc モードで -xc99=none を指定した場合は利用できません。]
|
(SPARC) 64 ビット (8 バイト、つまり 2 ワード)。8 バイト境界で整列される。
(x86) 64 ビット (8 バイト、つまり 2 ワード)。4 バイト境界で整列される。
|
float
|
32 ビット (4 バイト、つまり 1 ワード)。4 バイトで境界整列される。1 ビットの符号、8 ビットの指数部および 23 ビットの仮数部から成る。
|
double
|
64 ビット (8 バイト、つまり 2 ワード)。8 バイトで境界整列される (SPARC)。または、4 バイト境界に割り当てられる (x86)。double は、sign ビット、11 ビットの指数部、および 52 ビットの仮数部から成る。
|
long double
|
v8 (SPARC) 128 ビット (16 バイト、つまり 4 ワード)。8 バイトで境界整列される。long double は sign ビット、15 ビットの指数部および 112 ビットの仮数部から成る。
v9 (SPARC) 128 ビット (16 バイト、つまり 4 ワード)。16 バイトで境界整列される。long double は sign ビット、15 ビットの指数部および 112 ビットの仮数部から成る。
(x86) 96 ビット (12 バイト、つまり 3 ワード)。4 バイトで境界整列される。long double は sign ビット、16 ビットの指数部および 64 ビットの仮数部から成る。16 ビットは使用されない。
|