? Boucles infinies font que des portions de code de programmation pour exécuter l'infini. Parfois, une boucle infinie se produit par accident, normalement parce que le programmeur a inclus une erreur de syntaxe dans le code du programme. Cependant, parfois, les programmeurs utilisent des boucles infinies intentionnellement afin de définir le traitement qui va continuer à s'exécuter pendant l'exécution du programme . Quand ils se produisent par accident, boucles infinies peuvent empêcher certains programmes de crash. Syntaxe
Langages de programmation
de boucle utilisent une variété de structures de boucle. L'exemple de code suivant montre une boucle for de JavaScript : var i; for (i = 0; i < 5; i + +) { document.write ( i); }
Ce code écrit les chiffres de zéro à cinq dans le page Web du script s'affiche po l'autre type de boucle commune est la boucle tandis que , comme dans l'exemple JavaScript suivant : var i; while ( i < 5) { document.write ( i); i + +; }
ce code a le même effet que la boucle for, réalisé par autre syntaxe . Les programmeurs peuvent choisir n'importe quel type de boucle satisfaire les besoins de leurs programmes. Certaines tâches sont particulièrement adaptés aux types de boucles , mais souvent plus d'un type peuvent obtenir le même traitement .
Processus
Quand une boucle de programmation itération , un certain nombre de processus s'exécutent . Le code suivant montre un Java typique boucle for: for (int j = 0; j < 15; j + + ) {System.out.println ( j); }
Lorsque le code entre en premier dans cette boucle , l'entier variable compteur "j" est instancié avec une valeur de zéro . Ensuite, chaque fois que la boucle est exécutée , le test "j < 15" conditionnelle détermine si le contenu de la boucle est exécutée . Si le test renvoie une valeur vraie , la teneur exécute , puis le troisième élément dans le plan de la boucle exécute également , en incrémentant la variable compteur , qui ajoute une valeur de un à elle. Si le test conditionnelle renvoie la valeur false, la boucle ne s'exécute pas , de sorte que le traitement des sauts au point immédiatement après la boucle se termine . La boucle exécute un nombre fini de fois parce que les augmentations variables compteur à chaque itération. Le défaut de mettre en œuvre cette partie du processus correctement peut provoquer des boucles infinies accidentelles.
Compteurs
Certaines structures de boucle sont particulièrement susceptibles d'exposer les programmes de boucles infinies accidentelles . L'exemple de code PHP suivant montre une boucle while valide : $ count = 0; while ( $ count <20 ) {echo $ count , $ count + +; }
Cette boucle doit s'exécuter seulement 20 fois . Si le programmeur oublie d'inclure la déclaration finale dans la boucle, incrémenter le compteur variable, la boucle s'exécutera sans cesse . C'est une erreur facile à faire , mais ne peut empêcher tout un script PHP de fonctionner correctement .
Infini Boucles
Parfois, les programmeurs de créer des boucles infinies délibérément . Le code Java suivant montre une boucle while infinie : while ( true) { System.out.println (" Looping ");}
programmeurs peuvent ajouter du code à briser manuellement sur la structure de boucle comme suit : briser ;
Cette technique apparaît parfois dans les cas où le programmeur ne sait pas à l'avance combien de fois la boucle devra exécuter . Construire des boucles qui fonctionnent correctement et finissent quand ils devraient peut être difficile avec des programmes complexes .