Boucle sans fin en C/C
Question :
Différentes méthodes existent pour créer un boucle sans fin en C/C , y compris for(;;), while(1) et do {} while(1). Existe-t-il une forme préférée et les compilateurs modernes optimisent-ils l'une par rapport aux autres ?
Réponse :
Alors que les préférences personnelles alimentent de nombreuses discussions sur ce sujet, l'analyse objective révèle la suivant :
pour(;;)
while(1)
while(true)
Optimisation du compilateur moderne
Les compilateurs modernes reconnaissent toutes ces formes de boucles comme des boucles infinies et effectuent des optimisations équivalentes. Ils peuvent émettre des avertissements en fonction des paramètres du compilateur, mais le code optimisé généré est le même.
Conclusion
En fin de compte, le choix de la syntaxe de boucle sans fin est une question personnelle préférence. Cependant, étant donné la large reconnaissance de for(;;), son évitement des avertissements du compilateur et la redondance des efforts de lisibilité supplémentaires pour ceux qui sont familiers avec C/C , cela reste un choix raisonnable.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!