c++中的输出问题
当我执行cout<<f(1)<<f(2);时(f(int x)为一函数,返回一整形)为什么是先调用f(2)再调用f(1)?()和<<不都是右结合吗?
[解决办法]
这个貌似和COUT,编译器有关
[解决办法]
cout流的操作顺序是:先从右往左读入缓冲区,然后再从左往右输出。所以它从右边往左读的时候,碰到了函数当然去执行函数先了,然后把函数返回值读入缓冲区,然后从左往右输出。
[解决办法]
[解决办法]
从右向左执行的
发布时间: 2012-09-27 11:11:17 作者: rapoo
c++中的输出问题
当我执行cout<<f(1)<<f(2);时(f(int x)为一函数,返回一整形)为什么是先调用f(2)再调用f(1)?()和<<不都是右结合吗?
[解决办法]
这个貌似和COUT,编译器有关
[解决办法]
cout流的操作顺序是:先从右往左读入缓冲区,然后再从左往右输出。所以它从右边往左读的时候,碰到了函数当然去执行函数先了,然后把函数返回值读入缓冲区,然后从左往右输出。
[解决办法]