Quelle commnade en C
Fermé
david
-
6 avril 2003 à 12:30
batmat Messages postés 1871 Date d'inscription jeudi 1 novembre 2001 Statut Membre Dernière intervention 9 janvier 2008 - 8 avril 2003 à 14:34
batmat Messages postés 1871 Date d'inscription jeudi 1 novembre 2001 Statut Membre Dernière intervention 9 janvier 2008 - 8 avril 2003 à 14:34
8 réponses
Utilisateur anonyme
6 avril 2003 à 20:41
6 avril 2003 à 20:41
scanf() ?
Kalamit,
La nuit, tous les chats sont gris. Pas les poulets ! :@)
Kalamit,
La nuit, tous les chats sont gris. Pas les poulets ! :@)
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
}
@+
while( ! key_pressed() )
{
// Faire ici ce que tu veux
}
@+
nvti
Messages postés
23
Date d'inscription
dimanche 30 mars 2003
Statut
Membre
Dernière intervention
8 décembre 2003
6 avril 2003 à 23:17
6 avril 2003 à 23:17
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.
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.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
batmat
Messages postés
1871
Date d'inscription
jeudi 1 novembre 2001
Statut
Membre
Dernière intervention
9 janvier 2008
114
7 avril 2003 à 13:29
7 avril 2003 à 13:29
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 ?
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 ?
Joshua42
Messages postés
77
Date d'inscription
vendredi 4 janvier 2002
Statut
Membre
Dernière intervention
18 décembre 2006
8
8 avril 2003 à 14:23
8 avril 2003 à 14:23
essaye ca :
char c;
while (0 != (c = fgetc(stdin)))
{
bla bla;
}
char c;
while (0 != (c = fgetc(stdin)))
{
bla bla;
}
batmat
Messages postés
1871
Date d'inscription
jeudi 1 novembre 2001
Statut
Membre
Dernière intervention
9 janvier 2008
114
8 avril 2003 à 14:34
8 avril 2003 à 14:34
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 ?
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 ?