2

Javaと.netの両方で、デフォルトのintは32ビットです。javaと.netが登場したとき、使用されていたほとんどのプロセッサが32ビットだったという事実と関係がありますか?または、整数のデフォルトのビット長として32を選択する他の理由がありましたか?

4

2 に答える 2

4

はい、それは主にほとんどのプロセッサが32ビットであったという事実によるものです。これは、Java仕様の他の部分にも示されています。たとえば、longおよびdouble(64ビット)の読み取りと書き込みがアトミックであることが明示的に保証されているわけではありませんが、他のすべてのプリミティブ型ではアトミックです。

于 2013-03-17T21:40:38.850 に答える
2

JavaはCといくつかのC++に基づいていました。

Ccharでは8ビット、short16ビット、along longは64ビットです。intは16ビットまたは32ビットである可能性がありますが、Javaで簡単にするためにbyte、8ビット、short16ビット、int32ビット、およびlong64ビットであると決定しました。Javaではchar16ビットの符号なしです。

つまり、Cからは4つのタイプと4つのサイズがあり、int最終的に32ビットになりました。

于 2013-03-17T21:50:34.383 に答える