Maison > développement back-end > C++ > (4 > y > 1) est-il une expression C valide et comment est-elle évaluée ?

(4 > y > 1) est-il une expression C valide et comment est-elle évaluée ?

Mary-Kate Olsen
Libérer: 2024-12-18 01:04:09
original
200 Les gens l'ont consulté

Is (4 > y > 1) une expression C valide et comment est-elle évaluée ?
y > 1) une expression C valide et comment est-elle évaluée ? " />

Évaluation des opérateurs logiques chaînés en C : Est-ce que (4 > y > 1) est une instruction valide ?

Une question courante en programmation C se pose lorsque évaluer des opérateurs logiques chaînés, comme dans l'expression (4 > y > 1). Cet article explorera la validité et l'évaluation de telles déclarations, en fournissant un aperçu de la façon dont. les opérateurs logiques fonctionnent en C.

Syntaxe et analyse

L'expression (4 > y > 1) est analysée comme ((4 > y) > 1). Cela signifie que les opérateurs de comparaison > sont évalués de gauche à droite, ce qui donne une valeur logique de 0 (faux) ou 1 (vrai) pour chaque comparaison.

Évaluation

Dans l'expression donnée, 4 > y est supérieur ou égal à 4. Le résultat de cette comparaison est ensuite comparé à 1 avec le deuxième opérateur > 0 ou 1 n'est jamais supérieur à 1, la

instruction entière renverra toujours false

. Cependant, il existe une exception à cette règle :

Surcharge de l'opérateur

. Si y est une instance d'une classe personnalisée et que > L'opérateur a été surchargé pour effectuer une comparaison non standard, le comportement de l'expression peut alors changer. Par exemple, surcharger le > L'opérateur renvoyant un objet mytype entraînerait l'échec de la compilation de l'instruction.

Expression alternative

Pour rendre l'expression plus intuitive, elle peut être réécrite comme :

Cette expression utilise l'opérateur logique ET (&&) pour combiner deux comparaisons distinctes, ce qui donne un résultat vrai si les deux comparaisons sont vraies. Contrairement à l'expression originale, cette expression réécrite permet une compréhension plus claire de l'évaluation prévue.
(4 > y) && (y > 1)
Copier après la connexion

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal