Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/151.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ cin的奇怪行为_C++_Buffer_Cin_Flush - Fatal编程技术网

C++ cin的奇怪行为

C++ cin的奇怪行为,c++,buffer,cin,flush,C++,Buffer,Cin,Flush,我一直在练习一点C++。这是一个简单的程序,但我一直在玩终端,我注意到在“输入”中输入密码时有一个奇怪的行为。缓冲区似乎在“给我密码”消息之前“触发”。我怎样才能避免这种奇怪的行为 我正在为C/C++开发人员使用EclipseIDE 版本:Neon.3发行版(4.6.3) 构建id:20170314-1500 提前谢谢 #include <iostream> using namespace std; /* DO WHILE EXAMPLE*/ int main() {

我一直在练习一点C++。这是一个简单的程序,但我一直在玩终端,我注意到在“输入”中输入密码时有一个奇怪的行为。缓冲区似乎在“给我密码”消息之前“触发”。我怎样才能避免这种奇怪的行为

我正在为C/C++开发人员使用EclipseIDE

版本:Neon.3发行版(4.6.3) 构建id:20170314-1500

提前谢谢

#include <iostream>

using namespace std;

/*  DO WHILE EXAMPLE*/
int main() {

    const string password = "car";
    string input;
    do {
        cout << "Give me the password\n";
        cin >> input;

    if (input != password) {
            cout << "Incorrect Password\n";
    }

    } while (input != password);
    cout << "Correct Password";
    return 0;
}
#包括
使用名称空间std;
/*以身作则*/
int main(){
const string password=“car”;
字符串输入;
做{
cout>输入;
如果(输入!=密码){

cout这真的很奇怪。除了编译器为您的操作系统或其他东西生成错误代码之外,似乎没有其他原因。如果可能的话,我建议使用Visual Studio 2017


在您向cout写入内容后,请尝试等待。

是否有任何提示OP使用Windows?谢谢。我刚刚报告了错误,我刚刚注意到您没有包含字符串头。这可能是个问题。我没有安装它。我对Eclipse没问题。顺便说一句,我添加了字符串头,没有任何更改。无论如何,谢谢:)您使用的编译器是什么?它看起来不错像cin/cout一样,它们不是
tie()
d