Mã này là đơn giảnTại sao Qt Creator thêm một dòng mới sau khi cout.flush() gọi?
#include <iostream>
#include <unistd.h>
using namespace std;
int main()
{
for(int i = 0; i < 3; ++i)
{
cout << "1 "; cout.flush();
sleep(1);
}
}
trong khi trong file .pro
QT += core
TARGET = ProjectName
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TEMPLATE = app
Nếu đầu ra đi vào Qt Creator "đầu ra ứng dụng" (nơi dưới chỗ mã nguồn theo mặc định), mỗi "1 "bắt đầu từ một dòng mới.
Nếu tôi biên dịch và thực thi tệp * .cpp riêng biệt trong Thiết bị đầu cuối Ubuntu bằng g ++, nó hoạt động theo cách phù hợp.
Nếu tôi tạo một dự án mới trong Qt Creator và đầu ra đi vào giao diện điều khiển Qt Creator (cửa sổ mới với nền đen), nó hoạt động theo cách phù hợp.
Vâng, tại sao cout.flush() gây ra một dòng mới trong trường hợp đầu tiên?