首先a+++a
就是(a++)+a
,而a+a++
是a+(a++)
,那么先单独说a++
和 ++a
,它们的相同点都是给a+1,不同点是a++
是先参加程序的运行再+1,而++a
则是先+1再参加程序的运行。
我认为,a+++a
先计算了a++
,如果a=1,那么得出2,再+a,那最后的结果就是3。
那么反观a+a++
则稍有不同,同样如果a=1,先计算a++
,得到的还是1,然后在计算结果a+a++
,也就是1+1,最后得出2。
也就是说,a+++a
和a+a++
两个公式的运算方法是一样的,但是因为a++
和++a
本质上的差别,导致最后两个公式的结果不同。在实际运用时是一个需要特别注意的点。