C6288
Aviso C6288: Operador incorreto: inclusão mútua sobre && é sempre zero.Você pretendia usar ||?
Esse aviso indica que em uma expressão de teste, uma variável está sendo testado duas constantes diferentes e o resultado depende das duas condições que são verdadeiras.O código nesses casos que indica a intenção do programador não for capturada corretamente.É importante examinar o código e corrigir o problema; se não seu código não se comportará da mesma maneira que você esperava à.
Esse problema normalmente é causado por meio &&; em vez disso ||, mas também pode ser causado por meio == onde != foi planejado.
Exemplo
O código a seguir gera este aviso:
void f(int x)
{
if ((x == 1) && (x == 2)) // warning
{
// code ...
}
}
Para corrigir esse aviso, use o seguinte código:
void f(int x)
{
if ((x == 1) || (x == 2))
{
// logic
}
/* or */
if ((x != 1) && (x != 2))
{
// code ...
}
}
A ferramenta de análise não aviso se a expressão tiver efeitos colaterais.