Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Incorrect order of operations: bitwise-or has higher precedence than the conditional-expression operator. Add parentheses to clarify intent
Remarks
This message indicates that an expression that contains a bitwise-or operator (|) was detected in the tested expression of a conditional operation (?:).
The conditional operator has lower precedence than bitwise operators. If the tested expression should contain the bitwise-or operator, then parentheses should be added around the conditional-expression.
Code analysis name: BITORVSQUESTION
Example
The following code generates this warning:
int SystemState();
int f(int SignalValue)
{
return SystemState() | (SignalValue != 0) ? 1 : 0;
}
To correct this warning, use the following code:
int SystemState();
int f(int SignalValue)
{
return SystemState() | ((SignalValue != 0) ? 1 : 0);
}