Avertissement C6281
Ordre incorrect des opérations : les opérateurs relationnels ont une priorité plus élevée que les opérateurs au niveau du bit
Notes
Cet avertissement indique une erreur possible dans la priorité de l’opérateur, ce qui peut produire des résultats incorrects. Vous devez case activée la priorité et utiliser des parenthèses pour clarifier l’intention. Les opérateurs relationnels (<
, , >
, ==
<=
>=
, !=
) ont une priorité plus élevée que les opérateurs au niveau du bit (&
, |
, ^
).
Nom de l’analyse du code : BITWISERELATIONPRECEDENCEERROR
Exemple
Le code suivant génère cet avertissement :
#include <stdlib.h>
#define FORMAT 1
#define TYPE 2
void f(int input)
{
if (FORMAT & TYPE != input)
{
// code...
}
}
Le code suivant utilise des parenthèses pour corriger cet avertissement :
#include <stdlib.h>
#define FORMAT 1
#define TYPE 2
void f(int input)
{
if ((FORMAT & TYPE) != input)
{
// code...
}
}
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour