Par exemple:Comment puis-je vérifier quelle expression est évaluée en premier dans C?
5*3 + 9*6
Pour autant que je sache, selon les types de compilateurs dans certains 5*3
est évalué en premier tandis que dans d'autres compilateurs 9*6
est évalué en premier.
Y a-t-il une fonction dans C ou une technique qui permet de vérifier qui est évalué en premier?
Pour MSVC https://msdn.microsoft.com/en-us/library/2bxt6kc4.aspx~~V~~3rd –
J'ai aussi trouvé ceci: http://stackoverflow.com/questions/16530140/precedence-and-associativity -of-operators-in-c/16530162 # 16530162 and this http://stackoverflow.com/questions/7112282/order-of-evaluation-of-operands –
Étant donné qu'il n'y a pas d'effets secondaires, quel sens a-t-il? "évaluer d'abord" une partie de l'expression ici? Si les règles de préséance sont observées lors de la combinaison des sous-expressions, l'ordre d'évaluation des termes n'est pas un phénomène observable (à moins d'intervenir dans l'ensemble généré avec un débogueur, mais la situation n'est pas aussi nette). –