none
Не отображается работа оператора cout, если использую cin. RRS feed

  • Вопрос

  • Оператор ввода запарывает отображение кода в командной строке. Когда подключаю оператор ввода «cin», то работа операторов вывода сбрасывается и в командной строке я вижу результат работы только первого оператора вывода «cout».

    Компилятор у меня — Visual C++ 2008. На Dev-C++ выдаёт такую же командную строку, когда использую «cin». Отображает только результат работы первого оператора «cout» и выводит только «enter password». Так со всеми программами, где я использую «cin» (сбрасывается работа cout). Без оператора cin командная строка нормально отображает просто объявленные переменные, но без cin программировать тоже нельзя.

    Может это в операционной системе дело? Настройках командной строки? 

    #include <iostream>
    #include <string>
    using namespace std;

    int main()
    {
    string valid_pass = "qwerty123";
    string users_pass;
    cout << "enter password";
    getline(cin, users_pass);
    if(valid_pass == users_pass)
    {
    cout << "**right**" << endl;
    }
    else
    {
    cout << "**you make a mistake**" << endl;
    }
    return 0;
    }
    28 декабря 2014 г. 0:50

Ответы

  • Может это в операционной системе дело?

    Сколько раз я это слышал. Просто запредельная самоуверенность! Вам нужно язык программирования прежде выучить дабы не смешить людей.

    К сведению. cout (как, впрочем, и cin) не является оператором. И операцией тоже.


    Если сообщение помогло Вам, пожалуйста, не забудьте отметить его как ответ данной темы. Удачи в программировании!

    • Помечено в качестве ответа tatumzion 28 декабря 2014 г. 16:33
    28 декабря 2014 г. 15:54

Все ответы

  • Не совсем понятно, что именно у вас происходит. Возможно, просто консольное окно сразу закрывается?

    Поставьте в конце, перед оператором return, любой оператор чтения из консоли, чтобы она сразу не закрывалась.

    28 декабря 2014 г. 11:25
    1. Командная строка выводит как у меня на скрине, игнорируя то, что у меня есть операции вывода, и не одна. В любой программе у меня так (с использованием cin ничего не выводиться).
    2. Перед "return 0;" ставлю "cin.get();" - безрезультатно.
    3. Даже винду пришлось переустанавливать и качать другой компилятор. Может в настройках командной строки моей ОП что-то? 
    4.   
    28 декабря 2014 г. 13:36
  • Может это в операционной системе дело?

    Сколько раз я это слышал. Просто запредельная самоуверенность! Вам нужно язык программирования прежде выучить дабы не смешить людей.

    К сведению. cout (как, впрочем, и cin) не является оператором. И операцией тоже.


    Если сообщение помогло Вам, пожалуйста, не забудьте отметить его как ответ данной темы. Удачи в программировании!

    • Помечено в качестве ответа tatumzion 28 декабря 2014 г. 16:33
    28 декабря 2014 г. 15:54