Как предотвратить появление экрана вывода в Visual Studio 2013 С++ Compiler

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

#include <stdio.h>

int main()
{
    printf("hi");
    return 0;
}

"Программа" [5688] Project1.exe "вышла с кодом 0 (0x0)". Я знаю, что мой код работает и работает корректно, за исключением того, что я просто не могу заставить выходной экран оставаться без выхода через секунду.

Ответы

Ответ 1

Вы можете запустить приложение в режиме отладки и в режиме деблокирования. Обычно Ctrl + F5 запускает приложение без отладчика. И F5 просто запускает приложение.

Если вы выполняете Ctrl+F5 ( "Начать без отладки" ), консоль остается открытой в конце и запрашивает Press any key to continue . . . здесь вы можете увидеть результат.

Если вы просто используете F5, тогда вы находитесь в режиме отладки. В конце вы добавляете функцию getchar() до retuen 0;, поэтому консоль будет ждать нажатия любой клавиши...

Ответ 2

В дополнение к тому, что уже упоминалось, нужно перейти к свойствам проекта и изменить Subsystem в разделе System в параметрах Linker на Console (/SUBSYSTEM:CONSOLE). Тогда консольное окно останется при запуске программы с помощью ctrl+f5 (Debug/Start без отладки).

Ссылка MSDN для опции подсистемы.

Ответ 3

добавить этот код до return 0;

int  num;
scanf ("%d",&num);

или

getchar();

Ответ 4

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

  • Скомпилируйте и выполните свою программу с помощью программы Visual Studio Command Prompt.
  • Добавить getchar(); перед возвратом в ОС.
  • Добавить system("pause"); перед возвратом в ОС.

Ответ 5

Я просто положил точку останова (клавиша F9) в оператор return 0. Работает только в режиме отладки, но это именно то, что вы хотите. Если вы запускаете программу непосредственно из командной строки, она уже работает по назначению.

Ответ 6

#include <stdlib.h>
#include <stdio.h>
int main()
{
  printf("hello world");
  system("pause"); //this pauses the program until you press any key 
  return 0;
}

вывод будет:

привет мир

нажмите любую клавишу, чтобы продолжить...

Ответ 7

Я использую Visual Studio 2013 для Python, и я также борюсь с этой проблемой. Мое решение состоит в том, чтобы нажать F5 вместо Ctrl + F5, тогда у меня будет 2 всплывающих окна (вывод консоли и программы).

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

Ответ 8

Сначала я использовал metioned решения getchar() и breakpoints, но это не хорошо, если вы хотите, чтобы программа закончилась (например, если вы используете детектор утечки памяти). Я преодолел это, перенаправив вывод в файл. Вы можете сделать это, вставив >output.txt в параметр командной строки в разделе отладки свойств проекта

Ответ 9

Чтобы закрыть экран, вы можете использовать getchar(), как показано в Visual Studio:

#include "stdafx.h"
#include <stdio.h>
#include <iostream>
using namespace std;


int main()
{
    cout << "Hello\n";
    getchar();

}

Ответ 10

Вы также можете удерживать CTRL + F5, чтобы окно оставалось открытым.