2017-05-01 1 views
0

Quelqu'un peut-il penser à des avantages à la formeOù tester l'état de sortie dans while

while(1) { 
    ... 
    if(exit_condition) break; 
    ... 
} 

sur

while(!exit_condition) { 
    ... 
} 
+1

Si vous décidez de quitter la boucle plus tôt, la première vous permet d'éviter d'exécuter une logique supplémentaire. Je pense qu'en général, vous utiliseriez le premier (ou une combinaison des deux) pour les grandes boucles et le second pour les petites boucles. Où 'exit_condition' est évalué en bas de la boucle, en programmation embarquée, il peut être bon d'utiliser la seconde (mais même alors, cette petite considération de performance sera rendue obsolète par la plupart des compilateurs décents pour les langages embarqués populaires) comme C) – George

Répondre

0

Peut-être que vous ne pouvez pas calculer la exit_condition avant d'entrer dans la boucle. Parce que vous auriez besoin de calculs ou de valeurs, calculés à l'intérieur de la boucle.

0

Avantage: vous entrez dans la boucle au moins une fois. Reste à vous de savoir quoi faire dans la boucle.

Et l'inconvénient est qu'il n'est pas autorisé en Java.

+0

"Et l'inconvénient est, il n'est pas autorisé en Java.", Je veux dire Java n'est pas étiqueté, il semble que ce soit juste supposé être pseudo code. Il peut être utile d'ajouter l'équivalent Java valide 'while (true)' si vous pensez que c'est pertinent. – George