Avertissement du compilateur (niveau 4) C4703
Variable de pointeur local potentiellement non initialisée 'name' utilisée
Notes
Le nom de la variable de pointeur local a peut-être été utilisé sans avoir à attribuer de valeur. Cet accès peut entraîner des résultats imprévisibles.
L’option /sdl
du compilateur (Activer des vérifications de sécurité supplémentaires) élève cet avertissement à une erreur.
Exemple
Le code suivant génère l’erreur C4701 et 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
Pour corriger cet avertissement, initialisez la variable comme indiqué dans cet exemple :
#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);
}
Voir aussi
Avertissement du compilateur (niveau 4) C4701
Avertissements, /sdl
et amélioration de la détection des variables non initialisées