C6319
upozornění C6319: použití operátoru čárky v testovaném výrazu způsobuje, že je levý argument ignorován, nemá-li žádné vedlejší účinky
Toto upozornění ukazuje na podvýraz v testovacím kontextu ignorovaný kvůli operátoru čárky (,).Operátor čárky je asociativní zleva doprava.Výsledkem operátoru čárky je poslední vyhodnocovaný výraz.Nemá-li levý výraz operátoru čárky žádný vedlejší účinek, kompilátor může pro tento výraz vynechat generování kódu.
Příklad
Následující kód generuje toto upozornění:
void f()
{
int i;
int x[10];
// code
for ( i = 0; x[i] != 0, x[i] < 42; i++) // warning
{
// code
}
}
Chcete-li toto upozornění opravit, použijte logický operátor AND, jak je ukázáno v následujícím kódu:
void f()
{
int i;
int x[10];
// code
for ( i = 0; (x[i] != 0) && (x[i] < 42); i++)
{
// code
}
}