Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème de fin de programme

3 réponses
Avatar
Khaose
Je suis un cours sur le C++ mais j'ai un petit soucis, je pense que
beaucoup l'on eu aussi (enfin j'esp=E8re que je ne suis pas le seul ),
le voici : lorsque je debug mon programme il n'indique aucune erreur
mais lorsque le programme ex=E9cut=E9 se lance, la fen=EAtre console se
ferme d=E8s qu'elle est arriv=E9e =E0 la fin du code, tr=E8s g=EAnant pour =
les
"Hello world"

Merci d'avance de votre aide.

P.S.:Voici un exemple de code qui pose le probl=E8me (le plus simple du
monde "Hello world") :

#include <iostream>

using namespace std;

int main()
{
cout << "Hello world!" << endl;
return 0;
}

3 réponses

Avatar
Jean-Claude BELLAMY
"Khaose" a écrit dans le message de groupe de discussion
:
Je suis un cours sur le C++ mais j'ai un petit soucis, je pense que
beaucoup l'on eu aussi (enfin j'espère que je ne suis pas le seul ),
le voici : lorsque je debug mon programme il n'indique aucune erreur
mais lorsque le programme exécuté se lance, la fenêtre console se
ferme dès qu'elle est arrivée à la fin du code, très gênant pour les
"Hello world"



Il n'y a aucun problème, ce comportement est parfaitement NORMAL et LOGIQUE
!

Une fenêtre console, si on ne lui demande pas d'attendre une saisie au
clavier, va forcément se fermer si elle n'a plus de traitement à effectuer !
(il n'y a pas de boucle de gestion d'événement comme dans le cas d'une appli
à interface graphique)

C'est le cas p.ex. de TOUTES les applis en mode console telles que PING.EXE,
NSLOOKUP.EXE, TRACERT.EXE, IPCONFIG.EXE, NET.EXE, ..., qui n'ont aucune
interaction avec le clavier.

Si tu ne veux pas que la fenêtre se ferme tout de suite, il faut :
- soit demander la lecture d'un caractère ou d'une ligne au clavier
(avec une invite du style : "appuyer sur une touche pour continuer")
- soit exécuter l'application dans une fenêtre de commande
déjà ouverte (par CMD.EXE)


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr
Avatar
Fred
"Khaose" a écrit dans le message de news:

Je suis un cours sur le C++ mais j'ai un petit soucis, je pense que
beaucoup l'on eu aussi (enfin j'espère que je ne suis pas le seul ),
le voici : lorsque je debug mon programme il n'indique aucune erreur
mais lorsque le programme exécuté se lance, la fenêtre console se
ferme dès qu'elle est arrivée à la fin du code, très gênant pour les
"Hello world"



Oui, c'est un comportement normal en Console
Sinon, tu peux rajouter à la fin
getch(); oustd::cin.get();(Eviter les system("pause"), comme indiqué là par
exemple :http://www.gidnetwork.com/b-61.html )
Avatar
Khaose
D'accord, merci beaucoup pour vos réponses.