Ostrzeżenie kompilatora (poziom 4) C4701
Użyto potencjalnie niezainicjowanej zmiennej lokalnej "name"
Nazwa zmiennej lokalnej mogła zostać użyta bez przypisania wartości. Może to prowadzić do nieprzewidywalnych wyników.
Przykład
Poniższy kod generuje C4701 i 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
Aby poprawić to ostrzeżenie, zainicjuj zmienną, jak pokazano w tym przykładzie:
#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);
}
Zobacz też
Ostrzeżenie kompilatora (poziom 4) C4703
Ostrzeżenia, /sdl i poprawianie niezainicjowanego wykrywania zmiennych
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla