Очень часто новички сталкиваются с такой проблемой: запускают программу, а консоль закрывается после выполнения программы и не дает просмотреть результат ее работы. В этот статье мы поговорим о том, что нужно сделать, чтобы этого избежать.
Рассмотрим программу на языке C, которая выводит в консоль надпись «Hello world!»:
1 2 3 4 5 6 7 |
#include <stdio.h> int main () { printf("Hello world!\n"); return 0; } |
Запустим программу, для этого нажмем в Visual Studio клавишу F5. Консоль появляется и мгновенно исчезает. Существуют два пути решения этой проблемы.
Первый. Самый простой. Нажать одновременно клавиши Ctrl и F5. Смотрим результат:
Второй способ (которым почему-то пользуется большинство начинающих. Дописать в конце программы функцию, которая считывает символ с клавиатуры (_getch(), чтобы эта функция работала, подключаем библиотеку <conio.h>), тем самым программа ждет ввода символа и консоль не закрывается, а мы смотрим на результат ее работы.
1 2 3 4 5 6 7 8 9 |
#include <stdio.h> #include <conio.h> int main () { printf("Hello world!\n"); _getch(); return 0; } |
Теперь рассмотрим пример этой же программы на языке C#
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace consoleIsNotclosedCSharp { class Program { static void Main(string[] args) { Console.WriteLine("Hello world!"); } } } |
Если выполнить запуск программы в Visual Studio, нажав F5, мы ничего не увидим: консоль быстро закроется. Поэтому необходимо нажимать одновременно Ctrl и F5, либо дописать функцию Console.ReadLine(), которая будет ожидать ввода строки:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace consoleIsNotclosedCSharp { class Program { static void Main(string[] args) { Console.WriteLine("Hello world!"); Console.ReadLine(); } } } |
Запустив программу, мы увидим, что консоль не закрывается после выполнения программы, и теперь есть возможность прочитать выводимую фразу: «Hello world!». Нажав клавишу Enter, завершим программу.
Скачать исходники программ можно, нажав кнопку ниже.
Скачать исходники
Поделиться в соц. сетях:
тут можно использовать Console.ReadKey();
Да, это один из способов для C#
Проект—Свойства:(имя)—Компоновщик—Система
пункт «Подсистема» изменить на «Консоль(/SUBSYSTEM: CONSOLE)»