IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

[thread] quitter le programme


Sujet :

C

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 40
    Points : 29
    Points
    29
    Par défaut [thread] quitter le programme
    bonjour tout le monde,

    je suis en train de developper un petit jeu en c dans le cadre de mes études et j'aimerai ajouter la fonctionnalité suivante :

    quitter le jeu lorsque j'appuie sur la touche échap

    Je pense que je dois réaliser un thread pour realiser cela.

    Pour le moment g une fonction LireTouche( int ) qui retourne la touche que je viens de taper.

    voila si vous pouvez m'aider quant à la mise en place d'un thread en c.

    merci d'avance
    joneil

  2. #2
    Membre expérimenté
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Points : 1 664
    Points
    1 664
    Par défaut
    Pas besoin de thread pour cela. Il faut faire un test dans la boucle de jeu (en general, c'est fait avant de faire le rendu). Comme la boucle de jeu tourne tres vite (meme si le rendu est complexe), le joueur aura l'impression d'une reponse instantannee.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 40
    Points : 29
    Points
    29
    Par défaut
    helas je ne peu pas faire ça.

    Je t'explique :

    Je suis dans une boucle while avec comme condition d'arrêt la fin du jeu

    Dans cette boucle je demande à l'utilisateur de saisir une touche. Ainsi je pe utiliser ma fonctio LireTouche(int) qu'avant le scanf( ) ou qu'après ce qui limite vraiment les possibilités de quitter.

    exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    while(1){
       printf("entrer un nombre");
    //LireTouche
       scanf( ... );
    //LireTouche
    }

    voila j'espère que je me suis fais comprendre

  4. #4
    Membre expérimenté
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Points : 1 664
    Points
    1 664
    Par défaut
    Ben dans ta boucle while(), tu demandes d'entrer un nombre. La solution est d'utiliser un nombre "interdit" (genre -1) pour signifier que le joueur veut quitter, ou une entree non numerique.
    Tu demandes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    printf("Entrez un nombre (-1 pour quitter) : ");
    fflush(stdout);
    Si tu recoies -1, le jeu quitte.
    Evidemment, le joueur ne peut quitter qu'au debut de la boucle while, mais il n'est pas si presse de quitter que cela, si ?

Discussions similaires

  1. Nombre de Threads d'un programme
    Par c-ve dans le forum Delphi
    Réponses: 2
    Dernier message: 18/05/2006, 14h59
  2. Quitter mon programme
    Par DomiPi dans le forum C++Builder
    Réponses: 4
    Dernier message: 28/03/2006, 20h57
  3. Quitter un programme
    Par jojoboloss dans le forum Access
    Réponses: 8
    Dernier message: 08/02/2006, 14h26
  4. [Thread]Lancer mon programme toutes les 60 secondes?
    Par danje dans le forum Concurrence et multi-thread
    Réponses: 10
    Dernier message: 24/11/2005, 21h55
  5. Fermer la fentre sans quitter le programme?
    Par tomburn dans le forum OpenGL
    Réponses: 13
    Dernier message: 06/12/2004, 17h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo