关于上一篇随笔的纠正
关于vc编译器中进行表达式计算时,按照栈的方式进行处理。编译器参照vc++6.0如
k = 3;
result3=(++k)+(k++)+(++k);
k = 3;
result4=(++k)+((k++)+(++k));
两个的结果不同,前者先处理++k,接着是k++,然后k的值自加,接着处理++k,然后得到结果。结果为:4+4+5 = 13;
后者先处理++i,结果入栈,接着k++入栈,然后++k,结果与k++相加,最后在加上++k。结果为:5+(5+5) = 15。