Программа выходит после ввода данных - PullRequest
0 голосов
/ 25 июня 2018

Я проходил C ++ Primer Plus и работаю над проблемами программирования в нем с использованием кода Visual Studio, поскольку в Visual Studio 2017 были странные проблемы. Я просмотрел множество других подобных постов, но решения в них отсутствуют.не работает для меня.Например, я попытался поставить точку останова на закрывающей фигурной скобке функции main (), поместив cin.ignore () в конце перед возвратом 0. Но ничего из этого не работает.Вот код

#include <iostream>

using namespace std;

int main() {
    int inInput;
    cout << "Enter your height in inches." << endl;
    cin >> inInput;
    int feet = inInput/12;
    int inches = inInput%12;
    cout << feet << inches << " is your height." << endl;
    cin.ignore();
    return 0;

}

Редактировать:

Попробовал решение, которое было помечено как дубликат, и это не сработало.

1 Ответ

0 голосов
/ 26 июня 2018

Я попытался запустить ваш код и в качестве последней строки (перед возвратом) поставил cin.get(); строку.После этого мое окно не закрывается.

Кроме того, вы можете добавить еще одну строку cin.ignore(); или изменить существующую на cin.ignore(2), и это также поможет вам.Причина, по которой он закрывается, потому что после этой строки

cin >> inInput;

все еще \n находится внутри входного буфера.Итак, сначала cin.ignore() игнорирует только один \n и закрывает консольное приложение естественным образом.

ps Еще несколько способов ожидания:

Это просто режим по умолчанию для консольного приложения: закрыть после завершения выполнения программы.

Надеюсь, это поможет!Удачи!

...