char 型のデータの大きさは 1 Byte = 8bits = 28 = 256 だから、アルファベットの大文字・小文字、& などの特殊記号を表現する事ができる。日本語の文字(ひらがな、カタカナ、漢字)は 1 Byte では足りない。2 Bytes = 16 bits= 65536 あれば十分。
int 型のデータの大きさは 4 Byte = 4294967296 である。-214747368 から 2147483647 の数字が割り当てられている。
double 型のデータは指数部と小数部に分けて扱われる。2.22507e-308 〜 1.797693e308 の値が割り当てられている。
これらの範囲外の数値をintやdouble型の変数に代入しようとしても上手くいかない。プログラムで数値計算する際中に、変数の値が範囲外の値になって変な挙動をしてしまう現象をオーバーフローという。プログラムが上手く動かない原因(バグ)のよくある1つである。