诡异的C语言实参求值顺序

学了这么久的C语言,竟然第一次碰到这么诡异的实参求值顺序问题,大跌眼镜。果然阅读面太少了!

#include<iostream>

void foo(int a, int b, int c)
{
    std::cout<<a<<","<<b<<","<<c<<std::endl; //3,2,1
}
int main()
{
    int i=1;
    foo(i++,i++,i++);
}

亦即C/C++求值顺序是从右到左。

posted @ 2013-10-23 22:27  扶-苏  阅读(230)  评论(0编辑  收藏  举报