コンパイラの警告 (レベル 1) C4739 (C++)

ビューの切り替え:
スクリプトなし
Visual C++ の概念 : C/C++ プログラムのビルド
コンパイラの警告 (レベル 1) C4739

エラー メッセージ

変数 'var' への参照はその記憶域を超えています

変数のサイズよりも大きな値が代入されました。メモリが変数のメモリ位置を超えて書き込まれるため、データが失われる可能性があります。

この警告を解決するには、目的の値を格納できるサイズの変数だけに値を代入します。

次の例では C4739 警告が生成されます。

// C4739.cpp
// compile with: /RTCs /Zi /W1 /c
char *pc;
int main() {
   char c;
   *(int *)&c = 1;   // C4739

   // OK
   *(char *)&c = 1;
}