Sdílet prostřednictvím


Upozornění kompilátoru (úroveň 4) C4130

'operator' : logická operace na adrese řetězcové konstanty

Použití operátoru s adresou řetězcového literálu vytvoří neočekávaný kód.

Následující ukázka vygeneruje C4130:

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

Příkaz if porovnává hodnotu uloženou v ukazateli pc na adresu řetězce "Hello", který je přidělen samostatně při každém výskytu řetězce v kódu. Příkaz if nerovná řetězec, na který odkazuje, s řetězcem pc "Hello".

K porovnání řetězců použijte strcmp funkci.