visual studio как сделать так чтобы консоль не закрывалась

Программирование на C, C# и Java

Уроки программирования, алгоритмы, статьи, исходники, примеры программ и полезные советы

ОСТОРОЖНО МОШЕННИКИ! В последнее время в социальных сетях участились случаи предложения помощи в написании программ от лиц, прикрывающихся сайтом vscode.ru. Мы никогда не пишем первыми и не размещаем никакие материалы в посторонних группах ВК. Для связи с нами используйте исключительно эти контакты: vscoderu@yandex.ru, https://vk.com/vscode

Если консоль закрывается после выполнения программы

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

Рассмотрим программу на языке C, которая выводит в консоль надпись “Hello world!”:

Запустим программу, для этого нажмем в Visual Studio клавишу F5. Консоль появляется и мгновенно исчезает. Существуют два пути решения этой проблемы.

Первый. Самый простой. Нажать одновременно клавиши Ctrl и F5. Смотрим результат:

visual studio как сделать так чтобы консоль не закрывалась. Смотреть фото visual studio как сделать так чтобы консоль не закрывалась. Смотреть картинку visual studio как сделать так чтобы консоль не закрывалась. Картинка про visual studio как сделать так чтобы консоль не закрывалась. Фото visual studio как сделать так чтобы консоль не закрывалась

Второй способ (которым почему-то пользуется большинство начинающих. Дописать в конце программы функцию, которая считывает символ с клавиатуры (_getch(), чтобы эта функция работала, подключаем библиотеку ), тем самым программа ждет ввода символа и консоль не закрывается, а мы смотрим на результат ее работы.

Источник

Предотвращение закрытия окна консоли в приложении консоли Visual Studio C/С++

Это, вероятно, вопрос о запуске, поскольку, несомненно, ответ ослепительно очевиден.

Я использовал Visual Studio в течение многих лет, но это первый раз, когда я создал любую консольную программу.

Когда я запускаю приложение, появляется окно консоли, появляется выход программы, а затем окно закрывается по мере выхода приложения.

Есть ли способ открыть его, пока я не проверил вывод или не просмотрел результаты после закрытия окна?

ОТВЕТЫ

Ответ 1

Если вы запускаете без отладки (Ctrl + F5), то по умолчанию он предлагает вам нажать return, чтобы закрыть окно. Если вы хотите использовать отладчик, вы должны поставить точку останова в последней строке.

Ответ 2

Щелкните правой кнопкой мыши на вашем проекте

Свойства> Свойства конфигурации> Линкер> Система

Выберите Console (/SUBSYSTEM: CONSOLE) в опции SubSystem или вы можете просто ввести Console в текстовое поле!

Теперь попробуйте. это должно работать

Ответ 3

Ответ 4

Откройте меню отладки- > Нажмите Начать без использования

Ответ 5

Ответ 6

Ответ 7

(/SUBSYSTEM: CONSOLE) не работал для моего vs2013 (у меня его уже было).

«run without debugging» не является параметром, так как я не хочу переключаться между отладкой и просмотром вывода.

Решение, используемое в qtcreator до 2.6. Теперь, когда qt растет, vs идет другим путем. Насколько я помню, в vs2008 нам не нужны такие трюки.

Ответ 8

Здесь решение, что (1) не требует каких-либо изменений кода или точек останова, и (2) приостанавливается после завершения программы, чтобы вы могли видеть все, что было напечатано. Он остановится после F5 или Ctrl + F5. Основной недостаток заключается в том, что на VS2013 Express (как проверено) он не загружает символы, поэтому отладка очень ограничена.

Создайте командный файл. Я назвал мой runthenpause.bat со следующим содержимым:

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

Откройте свойства проекта | Конфигурационные свойства | Отладка.

Теперь, когда вы запустите, runthenpause.bat запустит ваше приложение, и после того, как ваше приложение завершится, вы остановитесь, чтобы увидеть вывод консоли.

Я опубликую обновление, если выясню, как загрузить символы. Я пробовал /Z7 за этот, но безуспешно.

Ответ 9

просто введите свою последнюю строку кода:

Ответ 10

Начиная с Visual Studio 2017 (15.9.4) есть опция:

Автоматически закрывать консоль, когда отладка прекращается:

Сообщает Visual Studio закрыть консоль в конце сеанса отладки.

Ответ 11

Вы можете запустить исполняемый файл из командной строки. Таким образом, вы можете увидеть весь вывод. Или вы можете сделать что-то вроде этого:

Ответ 12

добавить «| pause» в поле аргументов команды в разделе отладки в свойствах проекта.

Ответ 13

Просто нажмите CNTRL + F5, чтобы открыть его во внешнем окне командной строки (Visual Studio не контролирует его).

Если это не сработает, добавьте следующее в конец вашего кода:

Подождите, пока вы нажмете клавишу, чтобы закрыть окно терминала, как только код достигнет конца.

Если вы хотите сделать это в нескольких местах, поместите вышеуказанный код в метод (например, private void Pause() ) и вызовите Pause() всякий раз, когда программа достигает возможного конца.

Ответ 14

Несколько лучшее решение:

в начале вашей программы.

Ответ 15

Ответ 16

В моем случае я испытал это, когда создал проект Empty C++ в версии VS 2017 для сообщества. Вам нужно будет установить для подсистемы значение «Консоль (/SUBSYSTEM: CONSOLE)» в разделе «Свойства конфигурации».

Ответ 17

Вы также можете использовать эту опцию

Ответ 18

Ответ 19

Visual Studio 2015, импорт. Потому что я ненавижу когда примеры кода не дают необходимых импортов.

Источник

Предотвращение закрытия окна консоли в консольном приложении Visual Studio C / C++

Это наверное embarasing вопрос, без сомнения, ответ будет совершенно очевидной.

Я использовал Visual Studio в течение многих лет, но это первый раз, когда я сделал какую-либо разработку консольного приложения.

когда я запускаю приложение, появляется окно консоли, вывод программы, а затем окно закрывается по мере выхода приложения.

есть ли способ либо сохранить его открытым, пока я не проверил вывод, либо просмотреть результаты после окно закрыто?

16 ответов

Если вы работаете без отладки (Ctrl+F5), то по умолчанию он предлагает вам нажать return, чтобы закрыть окно. Если вы хотите использовать отладчик, вы должны поставить точку останова на последней строке.

Правой Кнопкой Мыши на вашем проекте

теперь попробуйте. он должен работать

вот способ для C / C++:

попробуйте позвонить getchar() перед main() возвращает.

(/SUBSYSTEM:CONSOLE) не работал для моего vs2013 (у меня уже был).

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

решение используется в qtcreator до 2.6. Теперь, когда qt растет, vs идет другим путем. Как я помню, в vs2008 нам не нужны такие фокусы.

вот решение, которое (1) не требует никаких изменений кода или точек останова и (2) приостанавливает после завершения работы программы так что вы можете видеть все это было напечатано. Он будет приостановлен после F5 или Ctrl+F5. Основным недостатком является то, что на VS2013 Express (как проверено) он не загружает символы, поэтому отладка очень ограничена.

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

откройте свойства проекта | свойства конфигурации | отладка.

теперь, когда вы бежите, runthenpause.bat запустит ваше приложение, и после того, как ваше приложение завершится, сделает паузу для вас, чтобы увидеть вывод консоли.

я опубликую обновление, если выясню, как загрузить символы. Я пытался!—5—> per этой но без успеха.

вы можете запустить исполняемый файл из командной строки. Таким образом, вы могли видеть все выходные. Или вы можете сделать что-то вроде этого:

и таким образом окно не будет закрываться, пока вы не введете данные для a переменной.

добавить «/ pause » в поле аргументы команды в разделе отладки в свойствах проекта.

просто нажмите CNTRL + F5, чтобы открыть его во внешнем окне командной строки (Visual Studio не имеет контроля над ним).

Если это не работает, добавьте следующее в конец вашего кода:

это ждать, пока вы нажмете клавишу, чтобы закрыть окно терминала, как только код достигнет конца.

Если вы хотите сделать это в нескольких местах, поставить выше код в метод (например, private void Pause() ) и вызов Pause() каждый раз, когда программа достигает возможного конец.

просто поместите в качестве последней строки кода:

несколько лучшее решение:

в начале вашей программы.

убедитесь, что сделать любой из них в конце

Visual Studio 2015 С импорт. Потому что я ненавижу когда примеры кода не дают необходимого импорта.

Источник

Предотвращение закрытия окна консоли в консольном приложении Visual Studio C / C ++

Это, вероятно, смущающий вопрос, так как, несомненно, ответ очевиден.

Я использовал Visual Studio много лет, но впервые я разрабатывал «Консольное приложение».

Когда я запускаю свое приложение, всплывает окно консоли, появляется вывод программы, а затем окно закрывается при выходе из приложения.

Есть ли способ оставить его открытым, пока я не проверил вывод, или просмотреть результаты после закрытия окна?

Если вы запускаете без отладки (Ctrl + F5), то по умолчанию он предлагает нажать клавишу возврата, чтобы закрыть окно. Если вы хотите использовать отладчик, вы должны поставить точку останова на последней строке.

Щелкните правой кнопкой мыши по вашему проекту

Свойства> Свойства конфигурации> Линкер> Система

Выберите Console (/ SUBSYSTEM: CONSOLE) в SubSystem опции или вы можете просто ввести Console в текстовое поле!

Вот способ для C / C ++:

Перейти к меню отладки-> Нажмите Пуск без отладки

Начиная с Visual Studio 2017 (15.9.4) существует опция:

Автоматически закрывать консоль при остановке отладки:

Сообщает Visual Studio закрыть консоль в конце сеанса отладки.

Попробуйте позвонить getchar() прямо до main() возвращения.

(/ SUBSYSTEM: CONSOLE) не работал для моего vs2013 (он у меня уже был).

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

Решение, используемое в qtcreator pre 2.6. Теперь, когда Qt растет, Vs идет другим путем. Насколько я помню, в vs2008 нам не нужны были такие хитрости.

Вот решение, которое (1) не требует никаких изменений кода или точек останова, и (2) делает паузу после завершения программы, чтобы вы могли видеть все, что было напечатано. Он будет приостановлен после F5 или Ctrl + F5. Основным недостатком является то, что на VS2013 Express (как проверено) он не загружает символы, поэтому отладка очень ограничена.

Создайте командный файл. Я назвал мой runthenpause.bat со следующим содержанием:

Откройте свойства проекта | Свойства конфигурации | Отладка.

Теперь, когда вы запустите, runthenpause.bat запустите ваше приложение, и после того, как ваше приложение будет завершено, вы остановитесь, чтобы увидеть вывод консоли.

Я опубликую обновление, если выясню, как загрузить символы. Я пытался /Z7 по этому, но безуспешно.

Источник

Как остановить автоматическое закрытие консольных приложений C#? [дубликат]

этот вопрос уже есть ответ здесь:

мои консольные приложения в Visual Studio закрываются автоматически, поэтому я хотел бы использовать что-то вроде C system(«PAUSE») чтобы «приостановить» приложения в конце его выполнения, как можно Я достигну этого?

9 ответов

Edit: украл ключевой символ у Дарина.

попробовать его. Я всегда это делаю, и консоль показывает мне мои результаты, открытые на нем. Дополнительный код не требуется.

Console.ReadLine() ждать, пока пользователь Enter или Console.ReadKey ждать любой ключ.

для его закрытия, когда кто-то нажимает любую клавишу, или:

Для когда пользователь вводит что-то и нажимает enter.

Ctrl + F5 лучше, потому что вам не нужны дополнительные строки. И вы можете, в конце концов, нажать enter и выйти из режима работы.

но, когда вы запускаете программу с F5 и ставите точку останова, вы можете отлаживать свое приложение, и это дает вам другие преимущества.

кроме того, вы можете отложить закрытие, используя следующий код:

Примечание Sleep использует миллисекунд.

эти решения, упомянутые изменить, как работает ваша программа.

вы можете сбиться с курса #if DEBUG и #endif вокруг вызовов консоли, но если вы действительно хотите предотвратить закрытие окна только на вашем компьютере dev под Visual Studio или если VS не работает, только если вы явно настроили его, и вы не хотите раздражать ‘Press any key to exit. ‘ при запуске из командной строки, путь заключается в использовании System.Diagnostics.Debugger API.

это также работает для отладки программ, которые нуждаются в повышенных привилегиях или которые должны быть в состоянии поднять себя.

Если вы не хотите, чтобы программа закрывалась, даже если пользователь нажимает anykey;

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *