B.1.11. 表达式求值

编译器可以对仅涉及同等优先级关联运算符和交换运算符的表达式进行重新排序,甚至是含有括号的表达式。 例如,如果 abc 是整数表达式,则 a + (b + c) 可以按照 (a + b) + c 进行求值。

在序列点之间,

编译器可以按照任意顺序对表达式求值,而不考虑括号。 因此,在序列点之间的表达式无论以何种顺序出现,都有可能出现副作用。

编译器可以按照任意顺序对函数参数求值。

相关标准未规定的有关求值顺序的所有方面,可能因以下情况而有所不同:

Copyright © 2007 ARM Limited. All rights reserved. ARM DUI 0348AC
Non-Confidential