Bonjour ! Je suis actuellement le cours d'apprentissage sur le C. Je suis en train de travailler sur l'amélioration du jeu du plus ou moins. J'ai remarqué que quand on avait compilé le programme, un fichier .exe apparaissait dans le dossier du projet (jusque là normal ). Cependant, quand j'exécute mon programme avec ce fichier .exe, le programme se fermait instantanément à la fin, sans laisser le temps de lire la phrase finale, alors que quand je l'exécute avec le fichier de mon projet (un fichier CodeBlocks), il ne se fermait pas comme ça instantanément à la fin...
Quelqu'un saurait pourquoi ça fait ça et comment résoudre ce problème ? Merci d'avance.
Le programme se ferme parce qu'il a terminé. Si tu ne veux pas qu'il se ferme, il faut lui faire faire quelque chose. Par exemple tu pourrais finir par quelque chose comme :
int truc ;
printf("Appuyez sur [Entrée] pour continuer : ") ;
scanf("%d", &truc) ;
Je viens d'essayer : même en tapant n'importe quoi, du moment que ça finisse par [Entrée] ça s'arrête (mais il y a d'autres façon de procéder).
Je ne savais pas comment configurer un IDE puisque je n'en utilise pas.
Comme je l'ai dit, je n'ai pas ce genre de problème avec cmd sur Windows.
Je ne met jamais ce genre de trucs dans mes programmes. J'en ai fait ici pour tester ce que ça donnait.
Une fois de plus, cela me réconcilie avec l'idée de ne pas avoir d'IDE.
Ah je ne suis pas d'accord avec toi.
Pour faire une analogie, je te vois bricoler avec un couteau suisse, alors que nous, avec notre IDE, on a une super trousse a outil, des tournevis électriques, une scie circulaire, une ponceuse, bref tout le matos qu'on peut trouver.... Et comme il n'est pas trivial de calibrer sa scie sauteuse, tu nous dis "je suis bien content d'utiliser ma petite scie que je déplie de mon couteau suisse...."
Oui c'est chiant de configurer un IDE, mais une fois que c'est fait, tu as plein d'outils (dont un debuggueur embarqué et de multiples aides à la compilation) intégrés qui te facilitent la vie.
Clic droit sur le projet (à gauche) / propriétés / onglet "build targets" puis cocher "pause when execution ends" en ayant fait attention de sélectionner "debug" à gauche.
D'où il ressort que le comportement de CB (à partir de quelle version ?), quand on fait tourner un programme est bien d'insérer une pause à la fin.
Leur idée d'ajouter une lecture à la fin quand on le lance dans un terminal est pourrie. Faut pas faire ça. Faites un script qui lance le programme, puis fait une pause.
Ceci dit, y a un moment que CB est arrivé dans ma poubelle.
- Edité par michelbillaud 5 janvier 2020 à 22:26:32
En fait j’ai l’impression qu’il veut lancer son programme en dehors de l’IDE, donc régler son IDE ne va pas changer grand-chose, d’autant plus qu’il dit bien que quand il lance son programme depuis Code::Block c’est OK.
Au PO : le truc c’est qu’un programme console n’est pas trop fait pour être lancé comme ça en cliquant dessus, mais plutôt pour être lancé depuis un terminal ouvert préalablement. Après, tu peux bien sûr rajouter une saisie de l’utilisateur à la fin de ton programme, mais je ne suis pas convaincu par cette solution.
Ce n'est un secret pour personne que je suis aveugle. Or, les IDE ont une utilisation très visuelle.
Pour reprendre ton analogie, je ne veux pas me prendre les doigts dans la scie circulaire.
Je peux utiliser le mode "debug" du compilateur et utiliser "gdb" si je veux.
La coloration syntaxique ne me serait d'aucune utilité.
Si on me confirme que Notepad++ peut faire de l'indentation automatique avec jumelage automatique des 'parenthèses' (telles que {} [] () "" et '') je veux bien faire l'effort de l'aprofondir.
Je pense être assez organisé, et pour faire plaisir à michelbillaud, j'utilise les fonctions à souhait.
Même si je n'ai pas beaucoup programmé durant les dernières années, j'ai tout de même 30 ans d'expérience sur les ordinateurs, dont 10 ans sur Unix avec C (et bien d'autres choses).
Le Tout est souvent plus grand que la somme de ses parties.
oui Notepad++ peut faire ça. C'est ce que j'utilise quand un bout de code me passe par la tête pour le noter vite fait ou pour des langages qui ne nécessite pas de support (type javascript / html).
C'est un peu le Bronxe au niveau des plugins et pour certains réglages, mais une fois bien installé et configuré, c'est assez agréable d'utilisation.
Ce n'est un secret pour personne que je suis aveugle. Or, les IDE ont une utilisation très visuelle.
Pour reprendre ton analogie, je ne veux pas me prendre les doigts dans la scie circulaire.
Je peux utiliser le mode "debug" du compilateur et utiliser "gdb" si je veux.
La coloration syntaxique ne me serait d'aucune utilité.
Si on me confirme que Notepad++ peut faire de l'indentation automatique avec jumelage automatique des 'parenthèses' (telles que {} [] () "" et '') je veux bien faire l'effort de l'aprofondir.
Je pense être assez organisé, et pour faire plaisir à michelbillaud, j'utilise les fonctions à souhait.
Même si je n'ai pas beaucoup programmé durant les dernières années, j'ai tout de même 30 ans d'expérience sur les ordinateurs, dont 10 ans sur Unix avec C (et bien d'autres choses).
Je ne remets pas du tout en doute tes compétences et ton expérience. Je dis juste que c'est dommage de se priver de trucs modernes et puissants.
Mais je raisonne comme toi dans d'autres domaines : pour le web par exemple. Je n'aime pas le web, et quand je veux faire une page rapide, j'ouvre un bloc note, et je tape du HTML vite fait comme je le faisais il y a 20 ans. Et je sais qu'il existe des logiciels puissants pour faire des sites, mais j'ai mes habitudes, et j'ai juste pas envie de m'y intéresser à ces logiciels. Et c'est pas facile de changer des habitudes.
Si tu parles d'une variable de type void*, elle a un type, elle n'en n'a pas deux.
Peut être faut il poser la question autrement, avec un exemple précis par exemple ? Et en faire un autre sujet, parce que ça n'a absolument aucun rapport avec celui-ci.
- Edité par michelbillaud 7 janvier 2020 à 13:35:34
Clic droit sur le projet (à gauche) / propriétés / onglet "build targets" puis cocher "pause when execution ends" en ayant fait attention de sélectionner "debug" à gauche.
Bonne continuation.
Pourtant ça ne marche toujours pas
Programme fermé instantanément à la fin
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Le Tout est souvent plus grand que la somme de ses parties.
Le Tout est souvent plus grand que la somme de ses parties.
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html
Bonhomme !! | Jeu de plateforme : Prototype.
Le Tout est souvent plus grand que la somme de ses parties.
Bonhomme !! | Jeu de plateforme : Prototype.
Le Tout est souvent plus grand que la somme de ses parties.
Bonhomme !! | Jeu de plateforme : Prototype.
Le Tout est souvent plus grand que la somme de ses parties.
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html
Le Tout est souvent plus grand que la somme de ses parties.
Le Tout est souvent plus grand que la somme de ses parties.