編譯器警告 (層級 4) C4701
可能未初始化的局部變數 『name』 已使用
局部變數 名稱 可能已被使用,而不需指派值。 這可能會導致無法預測的結果。
範例
下列程式碼會產生 C4701 和 C4703。
#include <malloc.h>
void func(int size)
{
void* p;
if (size < 256) {
p = malloc(size);
}
if (p != nullptr) // C4701 and C4703
free(p);
}
int main()
{
func(9);
}
c:\src\test.cpp(10) : warning C4701: potentially uninitialized local variable 'p' used
c:\src\test.cpp(10) : warning C4703: potentially uninitialized local pointer variable 'p' used
若要更正這則警告,請將變數初始化,如這個範例所示:
#include <malloc.h>
void func(int size)
{
void* p = nullptr;
if (size < 256) {
p = malloc(size);
}
if (p != nullptr)
free(p);
}
int main()
{
func(9);
}