C/C での long long
このコード スニペットは、C/C での long long データ型の使用を示しています。
#include <stdio.h> int main() { int num1 = 1000000000; long num2 = 1000000000; long long num3; long long num4 = ~0; printf("%u %u %u", sizeof(num1), sizeof(num2), sizeof(num3)); printf("%d %ld %lld %llu", num1, num2, num3, num4); return 0; }
コメント行のコメントを外してコードをコンパイルすると (long データ型には大きすぎる値を割り当てた場合)、エラーが発生します。
error: integer constant is too large for long type
これは、値 100000000000 がこれは、long データ型には大きすぎるため、コンパイラには、long long データ型を明示的に指定するためのサフィックスが必要です。この問題を解決するには、リテラルに LL 接尾辞を追加します。
long long num3 = 100000000000LL;
LL 接尾辞は、リテラルが long long 値として扱われる必要があることを示します。コードがコンパイルされて実行されると、10000000000 より大きい値が生成されます。これは、long long データ型の範囲が拡張されていることを示しています。
以上が「long」データ型が不十分な場合に、「LL」サフィックスを使用すると、C/C で大きな整数値をどのように処理できるようになるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。