Quelle commnade en C

david -  
batmat Messages postés 1880 Date d'inscription   Statut Membre -
quel est la fonction en langage C permettant de continuer une opération tant qu'aucune entrée n'ai été saisie au clavier

8 réponses

  1. brj
     
    ne pourrais pas tu etre plus clair!!?
    Quel operation!?
    0
  2. kalamit
     
    scanf() ?

    Kalamit,
    La nuit, tous les chats sont gris. Pas les poulets ! :@)
    0
  3. platonman1
     
    Salut, A mon humble avis et si j'ai bien compris ce que tu veux, tu ne peux pas faire ca avec juste une commande. Il te faut une boucle. Exemple :
    while( ! key_pressed() )
    {
    // Faire ici ce que tu veux
    }

    @+
    0
  4. nvti Messages postés 23 Date d'inscription   Statut Membre
     
    tu peux aussi derouter le vecteur d'interruption lié aux evenements clavier, sur une routine ( morceau de code )
    ecrite par toi et repondant a ce que tu veux faire en cas
    de frappe au clavier.

    dans un premier temps il faut recuperer l'adresse contenu dans le vecteur par la primitive getvect() ( si j'ai bon souvenir )
    memoriser cette adresse, pour l'inscrire en fin ( a priori )
    de ton code ( afin que le systeme puisse lui aussi recuperer
    l'evenement ) puis fixer le vecteur d'interruption à l'adresse de ton code par la fonction setvect() ( si j'ai bon souvenir )

    avec la touche F1, tu devrais obtenir toutes les infos sur ces 2 primitives.

    cette manip est exlique dans pas mal de bouquin de C, pas
    specialement avancés.

    si ca ne te semble pas clair contacte moi en email ( car je ne viens pas tous les jours en forum )

    a+

    ________
      N. v. Ti.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. josch83
     
    Tu peux utiliser la fct :

    kbhit();

    elle attend simplement qu'une touche soit pressé.
    0
  7. batmat Messages postés 1880 Date d'inscription   Statut Membre 114
     
    Oui c'est ça, while(!kbhit()){} si je me souviens bien. Par contre, ça ne sera pas du tout portable : je crois qu'elle est dans conio.h...

    Sinon jouer avec les interruptions serait l'autre solution
    @++

    Vous hésitez entre Linux et Windows?
    Vous voulez dépenser du temps ou de l'argent ?
    0
  8. Joshua42 Messages postés 77 Statut Membre 8
     
    essaye ca :

    char c;

    while (0 != (c = fgetc(stdin)))
    {
    bla bla;
    }
    0
  9. batmat Messages postés 1880 Date d'inscription   Statut Membre 114
     
    Nan ! :-) Fo pas non plus dire n'importe quoi : il cherche une méthode non bloquante => kbhit() en est une, fgetc n'en est pas...

    avec fgetc, tu vas bloquer le processus à chaque passage pour la saisie d'un caractère (et même sous unix/Linux tu ne te débloqueras qu'en appuyant sur CTRL+D ou sur Entrée par exemple) et ensuite il fera autant de passages dans la boucle qu'il faut pour vider le buffer...

    Merci de votre attention ;-)
    @++
    ---------
    Vous hésitez entre Linux et Windows?
    Vous voulez dépenser du temps ou de l'argent ?
    0