Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2324 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  kkun pourrait m'expliker comment marche cette fonction kbhit ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

kkun pourrait m'expliker comment marche cette fonction kbhit ?

n°375179
xavy
Posté le 28-04-2003 à 22:36:06  profilanswer
 

Je cherche a utiliser la fonction kbhit pour gérer la gestion du clavier lors d'un jeu vidéo. J'ai fait des recherches sur le net mais je comprends pas exactement comment elle marche et j'aime pas utiliser des trucs que je maitrise pas. Les lignes en gras sont celles sur lesquelles je "bloque"
 
 
while(1)
{
if(_kbhit())
 {
 nbhit++;
 fflush(stdin);

 touche=lit_clavier();
  switch(touche)
  {
  case  SPACE :
   ...
   break;
  case HAUT :
   ...
   break;
  case BAS :
   ...
   break;
  case DROITE :
   ...
   break;
  case GAUCHE :
   ....
   break;
   }
  }
   
    fflush(stdin);

   }
 
Merci d'avance :hello:


Message édité par xavy le 28-04-2003 à 22:36:30
mood
Publicité
Posté le 28-04-2003 à 22:36:06  profilanswer
 

n°375192
ToxicAveng​er
Posté le 28-04-2003 à 22:42:29  profilanswer
 

ben ca lis les touches appuyés sur le clavier
 
while(1) c'est une boucle infinie.
et nb_hit++ je suppose que ca compte le nombre de fois où tu as appuyés sur une touche.

n°375207
xavy
Posté le 28-04-2003 à 22:48:44  profilanswer
 

while (1)c'est une boucle infinie?
JE pensais k'a la place du "1" on devait mettre une condition du genre " tant qu'on a pas apuyé sur echap, on regarde kelle touche a été frappée"
pour le nbhit++ je pense que tu dois avoir raison
Donc si quelqun sait a koi correspond le while(1) et ce que ca fait la les fflush(stdin) :whistle:

n°375221
schnapsman​n
Zaford Beeblefect
Posté le 28-04-2003 à 22:53:56  profilanswer
 

le while(1) est une boucle infinie, sans doute dans une thread de lecture d'evenements klavier; _kbhit() est une fonction qui bloque jusqu'au prochain claquage clavier [:tapai]


---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
n°375244
xavy
Posté le 28-04-2003 à 23:01:47  profilanswer
 

:( Je vais passer pour un lourd mais tant pis je me lance dans mes questions.
1)c'est quoi claquage clavier
2)c'est quoi une thread
3)Comment feriez vous pour arreter la boucle en appuiyant sur une touche donnée
4)Si j'ai bien compris cette partie de code tourne tel quel(il fo bien sur que je définisse la fonction lit_clavier(); )
ENcore désolé de poser toutes ces questions :)


Message édité par xavy le 28-04-2003 à 23:02:12
n°375252
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 28-04-2003 à 23:07:43  profilanswer
 

Pour info, ça a été répété 36 fois mais bon :
 
LE FFLUSH(STDIN) EST UNE ABERRATION TOTALE QUI EST INDEFINIE ET QUI SERT DE JUSTIFICATIF AUX PROFS POUR MASQUER LEUR INCOMPETENCE !!!  
 
Désolé de gueuler, mais ça me révolte de voir ça à chaque fois ! :fou:


Message édité par Harkonnen le 28-04-2003 à 23:08:47

---------------
J'ai un string dans l'array (Paris Hilton)
n°375427
SquiZZ
Posté le 29-04-2003 à 00:59:49  profilanswer
 

Harkonnen a écrit :

Pour info, ça a été répété 36 fois mais bon :
 
LE FFLUSH(STDIN) EST UNE ABERRATION TOTALE QUI EST INDEFINIE ET QUI SERT DE JUSTIFICATIF AUX PROFS POUR MASQUER LEUR INCOMPETENCE !!!  
 
Désolé de gueuler, mais ça me révolte de voir ça à chaque fois ! :fou:


 
tu vois, il suffit de dire que fflush() ne marche que pour les flux en sortie et que donc ca ne marche pas sur stdin (ne marche pas pouvant signifier que le PC peut se mettre a chanter la cuccarracha si il veux car c'est un comportement non défini).
 
Et si t'as un problème avec tes anciens profs va leur mettre une droite en personne, pour ma part je suis très satisfait de ceux que j'ai eu.


Message édité par SquiZZ le 29-04-2003 à 01:22:44
n°375436
Kristoph
Posté le 29-04-2003 à 01:43:03  profilanswer
 

Si c'est pour géré le clavier, je ne saurais que trop te conseiller d'utilises une lib adaptée à ça et pas des fonctions C plus ou moins standard. Un exemple de tres bonne lib pour faire ça et même plus : www.libsdl.org


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  kkun pourrait m'expliker comment marche cette fonction kbhit ?

 

Sujets relatifs
PHP : creation d'une fonction a nombre de parametres variables ?[C] copier un fichier de données formatées via une fonction externe...
[PHP/JS] Grande chaine de car dans une fonction js.Comment ça marche le timer dans Visual Basic 6 [ newbie inside ]
[C] probleme avec fonction system()WWW-Authenticate sur Free... marche pô ??
[vb(a)] je veux faire fonction qui separe une chaine de char en deux[XML + DOM] fonction writetofile() ne marche pas
fonction mail() probleme avec la gestion des emails non envoyé 
Plus de sujets relatifs à : kkun pourrait m'expliker comment marche cette fonction kbhit ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR