J’aimerais savoir À quoi sert l’opérateur → (flèche) en C/C++ ?
Je code sur C++, et je suis complètement surpris que l’extrait de code suivant est compilé et est fonctionné à la fois dans Visual Studio 2008 et dans G++ 4.4.
Voici le code :
#include <stdio.h>
int main()
{
int n = 5;
while (n --> 0) // n va jusqu'à 0
{
printf("%d ", n);
}
}
Sortie:
4 3 2 1 0
Je suppose que c’est du C, puisque cela fonctionne aussi dans GCC. Où cela est-il défini dans la norme, et d’où cela vient-il ?
Quoi qu’il en soit, nous avons maintenant un opérateur « goes to ». « –> » est facile à mémoriser comme direction, et « while x goes to zero » a un sens direct.
De plus, c’est un peu plus efficace que for (x = 10 ; x > 0 ; x --) sur certaines plateformes.