9.12 long long

ARM コンパイラは、 型指定子 long long および unsigned long long によって、64 ビット整数型をサポートします。

これらの型の動作は、通常の算術変換が行われるという点で、 long unsigned long に似ています。 __int64 long long と同じ意味です。
整数定数には以下を設定できます。
  • ll 接尾文字。定数の型として、long long が適していれば long long を、適していなければ unsigned long long を設定します。
  • ull または llu 接尾文字。定数の型として unsigned long long を設定します。
printf()scanf() のフォーマット指定子に ll を含めることにより、%lld%llu のように、それに続く変換が long long 引数に 適用されるように指定できます。
また、プレーン整数定数の値が十分に大きい場合、プレーン整数定数は long long 型または unsigned long long 型になります。コンパイラによって、その変更を示す警告メッセージが生成されます。たとえば、厳密な 1990 ISO 標準規格 C では、2147483648 は unsigned long 型です。ARM C および C++ では、これが long long 型となります。この影響の 1 つとして、以下のような式の値があります。
2147483648 > –1
この式は、厳密な C および C++ の場合は 0、ARM C および C++ の場合は 1 に評価されます。
long long 型は、通常の算術変換で使用されます。
関連する参考文書
10.9 __int64
非機密扱いPDF file icon PDF 版ARM DUI0472LJ
Copyright © 2010-2015 ARM.All rights reserved.