Non, C++ est vraiment < C
Pourquoi?
C++ veut dire "je prend le chiffre avec le quel je fais la comparaison, puis j'incrémente". Donc le C de gauche vaut C, le C de droite vaut C+1 (incrémenté par le ++ de gauche, la gauche est testé avant la droite)
Par contre +CC n'est pas < C
Car +CC veut dire "j'incrémente, puis je prend le chiffre avec le quel je fais la comparaison", donc le C de gauche vaut C+1, le C de droite vaut C+1.
Subtilité certes, il faut "juste" savoir ce que veut dire "++" en C++, et on fait jamais ça en pratique. "C++; if (C<C)" c'est plus sûr, plus compréhensible.
Oui, il y a des piège en C++, mais il y en a aussi en Java ou Python, juste pas les mêmes.
ça peut dépendre de l'ordre d'évaluation des expressions C++ et C qui peut varier d'un compilo à l'autre
Et puis quoi encore. C'est dans la norme C++, un compilo qui ne fait pas ce que tu la norme est un compilo buggué. Ce n'est pas un cas de résultat indéfini, au contraire, c'est un cas d'école très classique (dans le même style que le truc sur les float en PHP qu'on retrouve dans des tests à la con)
[^] # Re: En vrac
Posté par Zenitram (site web personnel) . En réponse à la dépêche Naissance d'un géant : Java. Évalué à 1.
Non, C++ est vraiment < C
Pourquoi?
C++ veut dire "je prend le chiffre avec le quel je fais la comparaison, puis j'incrémente". Donc le C de gauche vaut C, le C de droite vaut C+1 (incrémenté par le ++ de gauche, la gauche est testé avant la droite)
Par contre +CC n'est pas < C
Car +CC veut dire "j'incrémente, puis je prend le chiffre avec le quel je fais la comparaison", donc le C de gauche vaut C+1, le C de droite vaut C+1.
Subtilité certes, il faut "juste" savoir ce que veut dire "++" en C++, et on fait jamais ça en pratique. "C++; if (C<C)" c'est plus sûr, plus compréhensible.
Oui, il y a des piège en C++, mais il y en a aussi en Java ou Python, juste pas les mêmes.
Et puis quoi encore. C'est dans la norme C++, un compilo qui ne fait pas ce que tu la norme est un compilo buggué. Ce n'est pas un cas de résultat indéfini, au contraire, c'est un cas d'école très classique (dans le même style que le truc sur les float en PHP qu'on retrouve dans des tests à la con)