C *S.Top++=e; e=*--S.top;

前置自加自减,后置自加自减,你真的了解么? int m,j=5; m=(j++)+(++j)+(j++); m是多少呢? 这样的题只要记住一点,后置自加(自减)需要到分号完才运算。答案18; *S.Top++=e;虽然++优先级比*高,但是它是后置自加,所以它是先把e存储到栈顶,然后指针上移; e=*--S.Top;这儿是前置,那么和*比较优先级,自然是--高,那么先下移指针,再把指针指向的东西赋给e; 好吧,是我一直没理解清楚,以后再错,自愿吃翔三斤,o(╯□╰)o。

转载于:https://www.cnblogs.com/HelloMyWorld/archive/2012/09/09/2679484.html

你可能感兴趣的:(c/c++)