Partager via


Avertissement du compilateur (niveau 4) C4130

'opérateur' : opération logique sur l’adresse d’une constante de chaîne

L’utilisation de l’opérateur avec l’adresse d’un littéral de chaîne génère du code inattendu.

L’exemple suivant génère l’avertissement C4130 :

// C4130.cpp
// compile with: /W4
int main()
{
   char *pc;
   pc = "Hello";
   if (pc == "Hello") // C4130
   {
   }
}

L’instruction if compare la valeur stockée dans le pointeur pc à l’adresse de la chaîne « Hello », qui est allouée séparément chaque fois que la chaîne se produit dans le code. L’instruction if ne compare pas la chaîne pointée à la pc chaîne « Hello ».

Pour comparer des chaînes, utilisez la fonction strcmp .