web-dev-qa-db-fra.com

Comment faire pour empêcher l'écran de sortie de disparaître dans le compilateur C ++ Visual Studio 2013

Je viens de télécharger Visual Studio 2013. Lorsque je compile C, il ne me montre pas ma sortie. L'écran de sortie apparaît pendant une brève seconde puis disparaît.

#include <stdio.h>

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

"Le programme '[5688] Project1.exe' s'est terminé avec le code 0 (0x0)." Je sais que mon code fonctionne et fonctionne correctement, sauf que je ne peux tout simplement pas faire en sorte que l'écran de sortie reste allumé sans quitter après une seconde.

15
user3128376

Vous pouvez exécuter l'application en mode débogage et en mode version. Normalement, Ctrl + F5 Exécutera l'application sans débogueur. Et F5 Exécute simplement l'application.

Si vous faites Ctrl+F5 ("Démarrer sans débogage"), la console reste ouverte à la fin et vous demande de Press any key to continue . . . Ici vous pouvez voir la sortie.

Si vous utilisez simplement F5, Vous êtes alors en mode débogage. À la fin, vous ajoutez, getchar() fonction avant retuen 0; Donc la console attendra jusqu'à ce que vous appuyiez sur n'importe quelle touche ...

29
user1814023

En plus de ce qui a déjà été mentionné, une autre option consiste à entrer dans les propriétés du projet et à changer la Subsystem dans la section System dans les options Linker en Console (/SUBSYSTEM:CONSOLE). La fenêtre de la console restera alors lorsque vous exécuterez le programme en utilisant ctrl+f5 (Débogage/démarrage sans débogage).

référence MSDN pour l'option de sous-système .

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

la sortie sera:

bonjour le monde

appuyez sur n'importe quelle touche pour continuer ...

3
james

Il y a plusieurs choses que vous pouvez faire (je suppose que vous utilisez Windows):

  1. Compilez et exécutez votre programme en utilisant le programme Visual Studio Command Prompt.
  2. Ajoutez getchar(); avant de retourner au système d'exploitation.
  3. Ajoutez system("pause"); avant de retourner au système d'exploitation.
2
Fiddling Bits

Je viens de mettre un point d'arrêt (touche F9) sur le return 0 déclaration. Fonctionne uniquement en mode débogage, mais c'est précisément ce que vous voulez. Si vous exécutez le programme directement à partir de la ligne de commande, il fonctionne déjà comme prévu.

2
MSalters

ajoutez ce code avant return 0;

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

ou

getchar();
2
Baqer Naqvi

Vous pouvez également maintenir CTRL + F5 pour que la fenêtre reste ouverte.

0
Marcus Lobo

Pour empêcher la fermeture de votre écran, vous pouvez utiliser getchar () comme suit dans Visual studio:

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


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

}
0
Debendra Dash

J'ai d'abord utilisé les solutions getchar () et points d'arrêt mentionnées mais ce n'est pas bon si vous voulez que le programme se termine (par exemple si vous utilisez un détecteur de fuite de mémoire). J'ai surmonté cela en redirigeant la sortie vers un fichier. Vous pouvez le faire en insérant >output.txt dans l'option de ligne de commande sous la section de débogage des propriétés du projet

0
gorilon

J'utilise Visual Studio 2013 pour Python et je lutte également avec ce problème. Ma solution consiste à appuyer sur F5au lieu de Ctrl + F5, alors j'aurai 2 fenêtres pop-up (console et sortie du programme).

Je ferme la fenêtre de la console et l'autre sera fermée ensemble.

0
Duong Trung Nghia