2009-09-02 4 views
2

J'apprends C++ et je suis en utilisant Visual C++ Express et lors de l'exécution de cettegarder cmd ouvert lors de l'exécution d'un fichier

#include <stdio.h> 

int main() 
{ 
    printf("Hello, World!\n"); 

    return 0; 
} 

la fenêtre cmd ferme si vite, je ne vois pas Bonjour tout le monde est là de toute façon pour éviter cela?

Répondre

5

Si vous appuyez sur Ctrl + F5, vous ne serez pas attaché avec un débogueur - cependant, il restera ouvert avec un message de type « Appuyez sur une touche pour continuer ».

+0

+1 Je n'y avais jamais pensé :( – AraK

+0

Merci pour le conseil – Raptrex

2

Mettez un getc() juste avant le retour. Le programme se ferme uniquement si vous appuyez sur une touche.

1

Oui, la solution courante consiste à ajouter une instruction qui lit les entrées du clavier. Cet appel bloque l'exécution jusqu'à ce qu'une touche soit pressée. Vous pouvez le faire avec des déclarations comme

printf("Hit \"Enter\" to continue\n"); 
fflush(stdin); /* Remove anything that is currently in the standard input */ 
getchar();  /* Wait for the user to hit the enter key */ 
1

vous pouvez taper ceci à la fin de la principale:

system("pause"); 
1

Je viens de mettre un point d'arrêt sur la déclaration de retour. Pas de changement de code. :-)

+0

Merci, je pense que l'utilisation mal ce – Raptrex

1

simple: écrire ceci pour arrêter

getch(); 
i.e 

main() 

{ 

////// 
Your program 

///////// 

getch(); 

}