我想每秒输出1,结果等了5秒输出了5个一,为啥?
#include <iostream>
#include <unistd.h>
using namespace std;
int main(){
for(int i=0;i<5;i++){
cout<<1<<endl;
sleep(1);
}
return 0;
}
结果:
第1秒:
第2秒:
第3秒:
第4秒:
第5秒:
第6秒:
11111
#include <iostream>
#include <unistd.h>
using namespace std;
int main(){
for(int i=0;i<5;i++){
cout<<1<<endl;
sleep(1);
}
return 0;
}
第1秒:
第2秒:
第3秒:
第4秒:
第5秒:
第6秒:
11111
我已经解决了,在cout后面加个flush
#include <iostream>
#include <unistd.h>
using namespace std;
int main(){
for(int i=0;i<5;i++){
cout<<1<<flush;
sleep(1);
}
return 0;
}