C6289
Предупреждение C6289: неверный оператор. Взаимное исключение || всегда дает ненулевую константу.Предполагалось использовать "&&"?
Это предупреждение указывает, что в тестовом выражении переменная проверяется для двух различных констант, а результат зависит от того, имеет ли любая из этих констант значение true.Результат всегда равен true.
Это обычно возникает из-за использования || вместо &&, но также может возникнуть из-за использования != вместо ==.
Пример
Данное предупреждение создается в следующем коде:
void f(int x)
{
if ((x != 1) || (x != 3))
{
// code
}
}
Для устранения этого предупреждения используйте следующий код:
void f(int x)
{
if ((x != 1) && (x != 3))
{
// code
}
}
/* or */
void f(int x)
{
if ((x == 1) || (x == 3))
{
// code
}
}