整数リテラルの型がデフォルトでは int ではない
プログラミングでは、通常、整数リテラルの型は int であると想定されます。ただし、これが当てはまらない場合もあります。
次の C コードを考えてみましょう。
for (i = 0; i < 10000000000; i++)
リテラル 10000000000 に「L」接尾辞が追加されていないにもかかわらず (明示的には長整数型を示します)、コンパイラはこの値が 32 ビットの範囲を超えていることを認識します。 integer.
C99 と C11 の両方の標準に従って、整定数の型は、その値を表すことができる表 6 の最初のエントリによって決まります。接尾辞のない 10 進定数の場合、表 6 では次の型を降順で指定しています。
したがって、指定されたコードサンプルでは、コンパイラーはリテラルを長いものとして解釈します。
「大きすぎる」リテラルは一般にコンパイル エラーになることに注意することが重要です。これは、値が許可されている型のいずれでも表現できないためです。
以上が整数リテラルが「int」ではないのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。