FreeBSDを語れ Part44at UNIX
FreeBSDを語れ Part44 - 暇つぶし2ch436:名無しさん@お腹いっぱい。
17/08/11 23:18:49.53 .net
>>423
> 64bitは人が扱う数字としてはでかすぎるんだよ。だから多くの環境でintは32bitで止まったんだよ。
別に止まってはいない。今は32bit時代のソフトがまだ残っているので互換性を維持するためにint = 32bitで
コンパイルする場合が多いというだけ。いずれ64bitが当たり前になればint = 64bitが普通になる。
メモリモデルは以下の表のようにLP32からILP64まであるので、マシンに合わせてどれでも使える。
それに、C言語の仕様は、整数型char、short、int、long、long longの型はいずれもサイズまでは
指定されておらず、実装によってまちまちになっている。
[各変数と実際のビットサイズ表]
整数型  LP32 ILP32 LLP64 LP64 ILP64
char    8  8   8    8   8
short   16  16  16   16  16
int    16  32  32   32  64
long   32  32  32   64  64
long long 64  64  64   64  64
今は64bitレジスタが普通に使えるのに、ソースが古くて64bitでコンパイルが通らないから
32bitのままコンパイルしとこう、というものぐさなことをする人が多いだけだと思う。
まあソースが山ほどあって直すのが面倒だという気持ちもわからなくはないが。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch