c++ 输出顺序

#include <iostream>

int add(int a,int b){
return a+b;
}

int main(int argc, char *argv[]) {
std::cerr << add(1,1) << std::endl;
std::cout << "3" << std::endl;
return 0;
}

代码如上,执行结果是先输出3然后输出2,理论上是先输出2然后输出3啊,为什么会造成这种现象

第1个回答  2018-05-04
我的执行结果是先输出2,后输出3.你是不是代码修改后没有重编过,执行的是旧程序。追问

用的Clion,运行会自动保存,应该也会重新编译,应该不会出现这种问题,添加其他代码也会执行

本回答被网友采纳
第2个回答  2023-02-25
用的Clion,运行会自动保存,应该也会重新编译,应该不会出现这种问题,添加其他代码也会执行
第3个回答  2018-05-03
这是两个不相同的流, cerr排在cout后面输出
相似回答