En ce momentGenshin ImpactValhallaBreath of the wildAnimal CrossingGTA 5Red dead 2
Liste des sujets
Incrementation en Java
XKCD
Niveau 10
17 novembre 2011 à 15:13:55
B'jour
Réalisant dans le cadre d'un projet de cours un compilateur Java (en plus épuré), je cherche à connaître la différence entre les expressions :
x++ ;
et
++x ;
s'il y en a une. Si quelqu'un connaît ce langage... Merci d'avance
Paulop
Niveau 12
17 novembre 2011 à 16:04:10
Ben c'est la post ou pre incrémentation. Premier cas on lit la valeur avant de l'incrémenter et dans l'autre on incrémente puis on lit la valeur.
XKCD
Niveau 10
17 novembre 2011 à 16:25:45
Si je comprends bien, le code :
int x = 0; int y = x++;
fait dans l'ordre "x=0, y=0, x=1", alors que :
int x = 0; int y = ++x;
fait dans l'ordre "x=0, x=1, y=1". C'est ça ?
Paulop
Niveau 12
17 novembre 2011 à 16:42:31
Exactement.
caelacanthe
Niveau 10
17 novembre 2011 à 18:31:14
"int y = x++; "
il y a un intérêt à faire ça, à part réduire le nombre de lignes de code (et risquer de sacrifier en lisibilité)?
XKCD
Niveau 10
17 novembre 2011 à 18:39:49
Va savoir, mais je dois prévoir le cas où le futur utilisateur de mon compilateur aurait envie de faire ça
godrik
Niveau 30
17 novembre 2011 à 18:59:12
caelacanthe, parfois ce genre d'astuce permet d'augmenter la lisibilite en rendant le code plus concis. Un exemple classique est celui du remplissage d'un buffer avec des information bizarre. Tu arrives a des codes comme: