C++ 使用std::cin时再次打印输入

C++ 使用std::cin时再次打印输入,c++,cin,C++,Cin,我试着在谷歌上搜索,但找不到答案 有时,当我使用std::cin时,我输入的任何内容都会在按下Enter键后再次打印到控制台。它可能仅限于我的机器/编译器,但我完全不知道为什么会发生这种情况,以及为什么它只是偶尔发生 以下是一些示例代码: int n; std::cout << "Enter n:" << std::endl; std::cin >> n; 但是只有在输入n:之后的行中的3是我输入的。为什么会发生这种情况?我该如何预防 编辑:由于这可能是一个

我试着在谷歌上搜索,但找不到答案

有时,当我使用
std::cin
时,我输入的任何内容都会在按下Enter键后再次打印到控制台。它可能仅限于我的机器/编译器,但我完全不知道为什么会发生这种情况,以及为什么它只是偶尔发生

以下是一些示例代码:

int n;
std::cout << "Enter n:" << std::endl;
std::cin >> n;
但是只有在
输入n:
之后的行中的3是我输入的。为什么会发生这种情况?我该如何预防


编辑:由于这可能是一个IDE问题,我使用的是CLion 2018.1.3

OS?终端仿真器?编译器和标准库实现?Windows 10,我没有使用任何模拟器,编译器是MingW 32或64位,而libstdc++,使用C++11它永远不会在同一行,因为流将被
std::endl
刷新。编辑后,CLion和其他JetBrains工具中的终端模拟不是最好的。是的,这是克莱恩的问题。在CMD或Powershell中运行程序以查看它
Enter n:
3
3