小编Иго*_*кин的帖子

为什么cout立即输出?

cout是一个缓冲流.这意味着数据将被写入缓冲区,并在刷新流,程序终止或缓冲区完全填满时打印.

我制作了一个小程序来测试它是如何工作的,但我不明白为什么它会在满足上述任何条件之前打印出来.

#include <iostream>
#include <ctime>
using namespace std;

int main()
{
    cout << "Test";
    float secs = 5;
    clock_t delay = secs * CLOCKS_PER_SEC;
    clock_t start = clock();
    while (clock() - start < delay) { }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

运行时,在循环开始之前输出"Test".

为什么在程序终止之前我的输出没有缓冲?

c++ io buffer cout output

5
推荐指数
1
解决办法
172
查看次数

标签 统计

buffer ×1

c++ ×1

cout ×1

io ×1

output ×1