楽落人の備忘録

楽して生きていきたい。知識とか覚えておきたくない。

int型の表現範囲

intの表現範囲が複数種類あった気がしたので整理

 

VBA

int -32,768 ~ 32,767

参考:

Integer型とLong型はどちらを使うべき? | VBA性能徹底検証 | VBA性能向上委員会

 

JAVA,C,postgres等

int -2,147,483,648 ~ 2,147,483,647

参考:

Javaのint型で扱える最大の値とは? | Javaコラム

 

表現範囲の理屈は二進数で表現してるから

参考:

2進数

intで定義された変数には整数値-32768から32767まで表現... - Yahoo!知恵袋

 

この辺は昔の常識が環境により変化している模様

昔はint範囲はint型で扱うが正しかったようだが、VBAでは32bit型に一度変換してからintを利用しているため、処理速度がlongと比較すると若干落ちるとのこと

現状では64bitマシンが主流になっているためこの常識もいつか変わるのかもしれない