共用方式為


C6001

更新:2007 年 11 月

警告 C6001: 使用未初始化的記憶體 <variable>

在指派值之前使用未初始化的區域變數時,就會產生這則警告。這會導致不可預測的結果。請務必在使用前先將變數初始化。

範例

下列程式碼會產生這則警告,因為變數 i 只有在 b 為 true 時才能初始化,否則會傳回未初始化的 i:

int f( bool b )
{
   int i;
   if ( b )
   {
      i = 0;
   }
   return i; // i is unintialized if b is false
}

若要更正這則警告,請將變數初始化,如下列範例所示:

int f( bool b )
{
   int i= -1;

   if ( b )
   {
      i = 0;
   }
   return i;
}

請參閱

參考

編譯器警告 (層級 1 和 層級 4) C4700

編譯器警告 (層級 4) C4701