3 réponses
yg_be
- Messages postés
- 13887
- Date d'inscription
- lundi 9 juin 2008
- Statut
- Contributeur
- Dernière intervention
- 14 janvier 2021
bonjour, le test en ligne 12 va toujours retourner vrai.
je suggère de lire la documentation des opérateurs de comparaison.
je suggère de lire la documentation des opérateurs de comparaison.
Signaler
lunafreiya
- Messages postés
- 4
- Date d'inscription
- jeudi 26 novembre 2020
- Statut
- Membre
- Dernière intervention
- 26 novembre 2020
Mais j'utilise déjà des opérateurs de comparaison dans mon code
Signaler
yg_be
- Messages postés
- 13887
- Date d'inscription
- lundi 9 juin 2008
- Statut
- Contributeur
- Dernière intervention
- 14 janvier 2021
- Messages postés
- 4
- Date d'inscription
- jeudi 26 novembre 2020
- Statut
- Membre
- Dernière intervention
- 26 novembre 2020
déjà, mais cela ne suffit pas, de toute évidence.
[Dal]
- Messages postés
- 5455
- Date d'inscription
- mercredi 15 septembre 2004
- Statut
- Contributeur
- Dernière intervention
- 9 janvier 2021
Salut lunafreiya,
L'opérateur
La ligne 12 que yg_be t'a signalée réalise une affectation entre les parenthèses du if :
j=18 étant une affectation, le contenu de la parenthèse est évalué à 18, or, en C, toute valeur autre que 0 dans un test correspond à "vrai".
c'est pourquoi yg_be te dit "le test en ligne 12 va toujours retourner vrai"
Dal
L'opérateur
=est un opérateur d'affectation, l'opérateur d'égalité est
==et pas autre chose.
La ligne 12 que yg_be t'a signalée réalise une affectation entre les parenthèses du if :
if (j=18)
j=18 étant une affectation, le contenu de la parenthèse est évalué à 18, or, en C, toute valeur autre que 0 dans un test correspond à "vrai".
c'est pourquoi yg_be te dit "le test en ligne 12 va toujours retourner vrai"
Dal