BohYoh.comトップページへ
C & C++ FAQ
目次

C C++ int型が少なくとも表すことのできる値の下限は-32768ですか、それとも-32767ですか。

 ずばり-32767です。
 負数を表す方法として、2の補数表現や、1の補数表現、符号+絶対値方式があります。
 2の補数表現では、16ビット整数あれば-3276832767までの65536個の整数を表すことができます。


 一方、1の補数表現では、-3276732767までの65535個の整数しか表すことができません。


 したがって、int型の表現範囲として、標準Cで保証されるのは、-32767なのです。
 なお、1の補数表現や2の補数表現に関しては、柴田望洋著『明解C言語入門編』第7章や、柴田望洋著『明解C言語実践編』第2章で詳しく解説されています。


■ 根拠 ■
標準C §5.2.4.2.1 Sizes of integral types
標準C99 §5.2.4.2.1 Sizes of integer types

戻る

BohYoh.comロゴ