Dela via


Kompilatorvarning (nivå 4) C4701

Potentiellt onitialiserad lokal variabel "namn" används

Anmärkningar

Det lokala variabelnamnet kan ha använts utan att tilldelas något värde. Detta kan leda till oförutsägbara resultat.

Example

Följande kod genererar C4701 och 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

Korrigera varningen genom att initiera variabeln enligt följande exempel:

#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);
}

Se även

Kompilatorvarning (nivå 4) C4703
Varningar, /sdl och förbättring av onitialiserad variabelidentifiering