Поделиться через


Предупреждение компилятора (уровень 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);
}

void main()
{
    func(9);
}
  
  

Чтобы исправить это предупреждение, используйте переменную, как показано в следующем примере:

#include <malloc.h>

void func(int size)
{
    void* p = nullptr;
    if (size < 256) {
        p = malloc(size);
    }

    if (p != nullptr)
        free(p);
}

void main()
{
    func(9);
}

См. также

Ссылки

Предупреждение компилятора (уровень 4) C4703

Другие ресурсы

Предупреждения, /sdl и использование неинициализированных переменная обнаружение