Sun Studio 12: C ユーザーズガイド

F.1 記憶装置の割り当て

データ型とその表現方法について次の表にまとめます。


注 –

スタックへの記憶装置の割り当て (内部リンクつまり自動リンクを伴う識別子を使用) は、2G バイト以下に制限すべきです。


表 F–1 データ型に対する記憶装置の割り当て

データ型 

内部表現 

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)。1 ビットの符号、11 ビットの指数部、52 ビットの仮数部から成る。

long double

v8 (SPARC) 128 ビット (16 バイト、つまり 4 ワード)。8 バイトで境界整列される。1 ビットの符号、15 ビットの指数部および 112 ビットの仮数部から成る。 

v9 (SPARC) 128 ビット (16 バイト、つまり 4 ワード)。16 バイトで境界整列される。1 ビットの符号、15 ビットの指数部および 112 ビットの仮数部から成る。 

(x86) 96 ビット (12 バイト、つまり 3 ワード)。4 バイトで境界整列される。1 ビットの符号、16 ビットの指数部および 64 ビットの仮数部から成る。16 ビットは使用されない。