コンパイラの警告 (レベル 2) C4307
'operator' : 整数定数のオーバーフロー
式で使用されている演算子が原因で、整数定数が、それに対して割り当てられた領域をオーバーフローします。 より大きな型を定数に使用することが必要な場合があります。 signed int
では符号表現に 1 ビットを使用するため、signed int
が保持する値は unsigned int
よりも小さくなります。
次の例では C4307 が生成されます。
// C4307.cpp
// compile with: /W2
int i = 2000000000 + 2000000000; // C4307
int j = (unsigned)2000000000 + 2000000000; // OK
int main()
{
}
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示