C++ “如何解释奇怪的输出?”;把「;在c++;?

C++ “如何解释奇怪的输出?”;把「;在c++;?,c++,C++,我正在读一段别人写的代码,有一行是这样的: cout << "Data Loaded" << endl; 额外的输出来自哪里?如果我对该行进行注释,则不会输出任何内容 然后我包含并将该行替换为put(“数据加载”),仍然会打印额外的信息。cout是一个缓冲输出流,endl不仅创建一个新行,还刷新缓冲区。如果不刷新缓冲区,您可能看不到前一个cout的输出。请构造一个。请提供一个。可能它是在您的输出之前编写的,由您没有向我们显示的其他代码编写的?根据您提供的信息,这是不可能

我正在读一段别人写的代码,有一行是这样的:

cout << "Data Loaded" << endl;
额外的输出来自哪里?如果我对该行进行注释,则不会输出任何内容


然后我包含
并将该行替换为
put(“数据加载”)
,仍然会打印额外的信息。

cout是一个缓冲输出流,endl不仅创建一个新行,还刷新缓冲区。如果不刷新缓冲区,您可能看不到前一个cout的输出。

请构造一个。请提供一个。可能它是在您的输出之前编写的,由您没有向我们显示的其他代码编写的?根据您提供的信息,这是不可能的。@Alaya:好的,那么它就在cout输出缓冲区中。即,先前完成但未刷新的输出
std::endl
定义为输出一个换行,然后在流上调用
.flush()
[18607330327, 18790481919] [19144201237, 19327352831] [20754813973, 20937965567] [21291684885, 21474836479] [21474836482, 21653864362] [22011707392, 22190735274] [23622320128, 23801348010] [24159191040, 24338218922] [27197264917, 27204255743] [27205653525, 27212644351] [27230819349, 27230959453] [27233615872, 27235153757] [30064771072, 30067638186] [30073159680, 30076026794] [30098325504, 30098440106] [30098456576, 30098536200] Data Loaded