Подтвердить что ты не робот

Как открыть окно консоли

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

class Program
{
    public class StringAddString       
    {                        
        public virtual void AddString()
        {
            var strings2 = new string[] { "1", "2", "3", "4", "5","6", "7", "8", "9"};

            Console.WriteLine(strings2);
            Console.ReadLine();
        }
    }

    static void Main(string[] args)
    {          
        StringAddString s = new StringAddString();            
    }
}
4b9b3361

Ответ 1

Вы забыли вызвать свой метод:

static void Main(string[] args)
{          
    StringAddString s = new StringAddString();  
    s.AddString();
}

он должен остановить вашу консоль, но результат может быть не таким, как вы ожидали, вы должны немного изменить свой код:

Console.WriteLine(string.Join(",", strings2));

Ответ 2

Поместите Console.Read() в качестве последней строки в вашей программе. Это предотвратит его закрытие, пока вы не нажмете клавишу

static void Main(string[] args)
{
    StringAddString s = new StringAddString();
    Console.Read();            
}

Ответ 3

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

if (System.Diagnostics.Debugger.IsAttached) Console.ReadLine();

Как и другие ответы, вызов Console.ReadLine() будет удерживать окно открытым до тех пор, пока не будет нажата клавиша ввода, но Console.ReadLine() будет вызываться только при подключении отладчика.

Ответ 4

Есть два способа узнать

1) Console.ReadLine() в конце программы. Недостатком, вам нужно изменить свой код и не забыть его вынуть

2) Запуск за пределами отладчика CONTROL-F5 открывает окно консоли вне визуальной студии и это окно не будет закрыто по завершении. Преимущество, вам не нужно менять свой код. Недостаток, если есть исключение, он не попадет в отладчик (однако, когда вы получаете исключения, вы можете просто просто запустить его в отладчике)

Ответ 5

Console.ReadKey(true);

Эта команда немного приятнее, чем readline, которая проходит только тогда, когда вы нажимаете enter, а истинный параметр также скрывает уродливый мигающий курсор при чтении результата:), тогда любое нажатие клавиши заканчивается

Ответ 6

Напишите Console.ReadKey(); в последней строке метода main(). Эта строка предотвращает отделку консоли. Надеюсь, это поможет вам.

Ответ 7

Вы можете справиться с этим, не требуя ввода пользователем.

Шаг 1. Создайте ManualRestEvent в начале основного потока

ManualResetEvent manualResetEvent = new ManualResetEvent(false);

Шаг 2. Wait ManualResetEvent

manualResetEvent.WaitOne();

Шаг 3. Чтобы остановить

manualResetEvent.Set();

Ответ 8

Используйте Console.Readline() в конце. Ваш код не будет закрыт, пока вы его не закроете вручную. Поскольку Readline ждет ввода, который нужно ввести для вашего кода, ваша консоль будет открыта до тех пор, пока вы не наберете какой-либо ввод.

Ответ 9

Обязательно используйте Console.ReadLine(); чтобы препроводить предыдущее сообщение Console.WriteLine("");.

Ответ 10

Для Visual С# консольного приложения используйте:

Console.ReadLine();
Console.Read();
Console.ReadKey(true);

для визуального консольного приложения c++ win32 используйте:

system("pause");

нажмите Ctrl + F5, чтобы запустить приложение.