在不同的编译器下,有些表达式得到的结果是不敬相同的,比如下面的表达式:a = 1 , b = 1;(a * b + ++b);在vc中得到是3, 而在bc中得到的却是1×2+2 = 4。从这个例子可以看出来,运算符之间的优先级是没有特别必要去区分的,像这样的题目要得到不同的运算方式可以采用讲语句分成两个语句,实现起来没什么不爽的。
就如在这样的一个表达式中,++a*(a + b).一般我们会认为括号的运算级别最高,但是错了,先是++a.然后再进入括号运算。呜呼!累,没必要啊,可是有些题目就是这样,悲哉!