C++ 看来std::flush没有';t与std::cout一起工作
只是一个简单的测试:C++ 看来std::flush没有';t与std::cout一起工作,c++,netbeans-7,iostream,C++,Netbeans 7,Iostream,只是一个简单的测试: #include <iostream> int main(int , char** ) { for( size_t i = 0; i < 1000; i++ ) { std::cout << i << std::endl; } std::cout << std::flush; return 0; } 但我得到: ... 838 839 840 请告诉我我做错了什么? std::flus
#include <iostream>
int main(int , char** )
{
for( size_t i = 0; i < 1000; i++ )
{
std::cout << i << std::endl;
}
std::cout << std::flush;
return 0;
}
但我得到:
...
838
839
840
请告诉我我做错了什么?
std::flush是如何与std::cout一起工作的?
提前谢谢
PS
环境:Ubuntu Linux,g++4.8,从NetBeans 7.2推出
我不能直接从shell复制它。
可能是NetBeans错误吗??顺便说一句,当你插入
std::endl
时,无论如何都应该刷新流。这种刷新是完全冗余的,因为std::endl
无论如何都会刷新。这可能是一个NetBeans错误吗?
我倾向于相信“我不能直接从shell复制它。”所以它显然是被刷新的。
...
838
839
840