long

読み:ロング
外語:long
発音:l'#c(:)ŋ
品詞:名詞

C/C++/Java予約語の一つ。

「サイズの大きな整数型」を示し、intと同じかそれより大きい。

C/C++

long

「long」そのものは、様々な修飾に用いる予約語である。

正式にはlong intと書いて長いintを表わす。但しlongの後のintは省略可能であり、longとだけ記述した場合はlong intであるとして処理される。

仕様

C/C++では符号付きで、概ね32ビット以上の処理系依存のサイズを持つ。

但し、言語仕様上はビット長は保証されておらず、

charshortintlonglong long

とされている。

サフィックス

数値の型を表わすサフィックスは、次のものが使われる。

  • L、l等

printf

printfのフォーマット文字列は、標準的には%ldなどを用いる。

マクロ定数

ANSI Cの時代より、limit.hにおいて以下の3個のマクロ定数が定義されるようになった。これを利用すると、その環境での長さを得ることができる。

LONG_MIN
long型の最小値 (例えば-2147483648)
LONG_MAX
long型の最大値 (例えば2147483647)
ULONG_MAX
unsigned long型の最大値 (例えば0xffffffff)

typedef

ISO Cには、次のtypedefが存在する(longが64ビット長の場合のみ)。

typedef long int int64_t;

Windowsでは、次のtypedefが存在する。

typedef unsigned long ULONG;

typedef unsigned long DWORD;

Java

Javaでは符号付き64ビット。