2017-01-26 3 views
1

У меня проблема с приведенным ниже кодом C++. Проблема в том, что после ввода пользователем ввода черный экран исчезает очень быстро. Я бы хотел, чтобы черный экран оставался на месте, пока я не нажал кнопку ввода. Я пробовал использовать cin.get(), но я новичок в C++, и я не понимаю, что не так. (Я не получаю код ошибки, просто я хочу, чтобы черный экран оставался). Я использую Visual Studio.Черный экран в C++ исчезает, чтобы быстро

#include <iostream> 
#include<string> 

using namespace std; 

int main() { 
    string password = "Hello"; 

    cout << "Enter password" << flush; 
    cin.get(); 
    string input; 
    cin >> input; 

    if (input == password) { 
     cout << "The password is correct" << endl; 
     cin.get(); 
    } 


    if (input != password) { 
     cout << "Access denied" << endl; 
     cin.get(); 
    } 

    return 0; 
} 
+0

Я добавил cin.get(); ниже cin, а затем он отлично работал с черным экраном. – David

+0

См. Здесь: http://stackoverflow.com/questions/1908512/c-hold-the-console-window-open – Vertexwahn

ответ

4

Она закрывается, потому что она достигает конца main(), что означает, что нет ничего больше, чтобы сделать, и функция возвращает. Простым решением было бы использовать функцию getChar() перед оператором return, это откроет окно, пока вы не наберете символ (любой символ) на клавиатуре.

+0

Отлично, спасибо за ваш ответ! – David

Смежные вопросы