C6319
advertencia C6319: El uso del operador de comas en una expresión probada hace que el argumento izquierdo se omita cuando no tiene efectos secundarios
Esta advertencia indica una sub-expresión omitida en contexto de prueba debido al operador de comas (,).El operador de comas tiene asociatividad de izquierda a derecha.El resultado del operador de comas es la última expresión evaluada.Si la expresión situada a la izquierda del operador de comas no tiene ningún efecto secundario, el compilador podría omitir la generación de código para la expresión.
Ejemplo
El código siguiente genera esta advertencia:
void f()
{
int i;
int x[10];
// code
for ( i = 0; x[i] != 0, x[i] < 42; i++) // warning
{
// code
}
}
Para corregir esta advertencia, utilice el operador lógico AND como se muestra en el código siguiente:
void f()
{
int i;
int x[10];
// code
for ( i = 0; (x[i] != 0) && (x[i] < 42); i++)
{
// code
}
}