En langage C, && et & sont tous deux des opérateurs logiques, mais il existe les différences suivantes : && a une priorité plus élevée que & ; && est associatif à gauche, & est associatif à droite ; && renvoie une valeur booléenne et renvoie une valeur entière ; ; && évaluation de court-circuit , & ne court-circuite pas l'évaluation.
La différence entre && et & en langage C
En langage C, && et & sont tous deux des opérateurs logiques, utilisés pour opérer sur des valeurs booléennes. Cependant, il existe plusieurs différences clés entre eux :
1 Priorité d'opération
2. Associativité
3. Résultat de l'opération Le résultat de l'opération de
4. Évaluation de court-circuit
Exemple
L'exemple de code suivant montre la différence entre ces deux opérateurs :
int a = 1, b = 0; printf("&&: %d\n", a && b); // 输出: 0 (假) printf("& : %d\n", a & b); // 输出: 0 (0)
Dans le premier exemple, puisque a est vrai mais b est faux, l'expression && renvoie Fake. Dans le deuxième exemple, puisque a est vrai et b est faux, l'expression & est évaluée à 0 (une valeur entière).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!