CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Probleme exe avec Code Blocks

-do_ob-
-do_ob-
Niveau 8
14 octobre 2009 à 19:08:29

wesh wesh les weshs weshs

J'ai un probleme avec mon programme, quand je le lance a partir de code blocks avec build and run, il marche tres bien, premiere question, je repond, deuxieme question, je repond et ca m'ecris une reponse et quand j'appuie sur une touche, le programme se ferme. PERFECT !

Mais, si je lance le fichiers exe directement, et bha ca me fait, question, je repond, question, je repond et là, le programme se ferme direct. Enfin pas direct, parceque pdt meme pas 1seconde, ca ecris la reponse mais le programme se ferme direct, sans avoir appuyé sur rien. NOT PERFECT !

Help me plz !

godrik
godrik
Niveau 30
14 octobre 2009 à 19:18:11

...
Ce comportement est normal. Si ton programme etait lance dans un terminal tu n'aurais pas le soucis
code blocks met une pause a la fin de l'execution d'un processus pour que le developpeur puisse voir la sortie du programme. Mais cette pause n'est pas incluse dans le programme en lui meme parceque tu ne veut generalement pas faire ca.

-do_ob-
-do_ob-
Niveau 8
14 octobre 2009 à 20:59:04

fuck

Donc je ne peut rien faire ?

godrik
godrik
Niveau 30
14 octobre 2009 à 21:42:58

Un programme console est fait pour etre executer en script ou dans un terminal donc tu ne peux pas qu'il attende a la fin.
Si tu veux vrament une pause, je pense que windows a une option dans les propriete du programme pour laisser la fenetre ouverte a la fin de l'execution du programme. (En tout cas, ca existait sous windows 2000)
La derniere solution est de mettre explicitement une pause a la fin de ton programme.

chris_27
chris_27
Niveau 10
14 octobre 2009 à 22:54:20
  1. include <cstdlib> // C++

OU

  1. include <stdlib.h> /* C */

et un petit :

system("pause");

juste avant le "return 0;" dans main.

Psychotic_Frog
Psychotic_Frog
Niveau 10
21 octobre 2009 à 05:26:24

system("pause") n'est pas vraiment portable, met la macro getchar() à la place, comme ça le programme attendra que tu entres un caractère et ça agit comme une pause.

godrik
godrik
Niveau 30
21 octobre 2009 à 07:27:39

psychotic_frog, tu t'en fous de la portabilite en l'occurence. Tu mets juste le system("pause") pour des raisons de test. Aucune application ne veut une pause a la fin.

Psychotic_Frog
Psychotic_Frog
Niveau 10
21 octobre 2009 à 16:05:33

S'il est sur Linux system("pause") ça marchera pas. Tant qu'à proposer des solutions pas portables, tu dis rien.

godrik
godrik
Niveau 30
21 octobre 2009 à 16:23:58

...

Si tu es sous linux, tu n'as probablement pas ce soucis la parceque tu lance ton application directement dans un terminal. Aucune application raisonable ne veut une pause a la fin. Entre autre ca casse toutes les utilisations en script du programme.

C'est juste un hack de debuggage. Tu t'en fous completement qu'il soit propre.

Je pense que la meilleur solution est de regler ton systeme d'exploitation/environnement de developpement/whatever pour que le probleme ne se pose pas.

dnob700
dnob700
Niveau 10
22 octobre 2009 à 00:04:48

de plus getchar n'est pas du tout équivalent à system("pause"), car dans toutes les libc modernes ça attend que la touche entrée soit pressée pour retourner (sauf si le line editing est désactivé dans le terminal, mais il n'y a pas de raison).

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment