begin process at 2010 02 10 07:54:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

comment gérer un sleep() et une siasie de touche en même temps?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

comment gérer un sleep() et une siasie de touche en même temps?

samedi 6 décembre 2003 à 17:19:02 | comment gérer un sleep() et une siasie de touche en même temps?

capunk

bonjour, j'ai un programme a faire dont le but est de simuler le fonctionnement d'une mémoire vive.
Donc mon soucis c'est qu'il faut que je simule aussi la partie temps : j'ai déjà regardé sur le site et apperemment j'ai plusieurs possibilité pour marquer des temps d'arrêt pour simuler les temps d'exécution (sleep() , clock()...).
Cependant j'ai un autre soucis : il faut que l'utilisateur soit capable de rajouter un programme dans la mémoire quand il le souhaite. Or, si celui ci ne rentre aucun programme , celui ci doit continuer de trouner en simulant l'exécution des programmes de la mémoire vive.

Donc ce que je voudrais faire c'est :

-faire des attentes de 2sec (a peu près) pour simuler les cycles du processeurs.
-si l'utilisateur appui sur une touche (pendant ces 2 sec )(0 par exemple) le menu lui permettant de rajouter un programme s'affiche
-si l'utilisateur n'a appuyé sur aucune touche pendant ces 2 sec : je passe au prochain cycle (attente de 2 sec ....)

=> le gros problème que je rencontre c comment, si au bout de 2 secondes d'attente l'utilisateur n'a appuyé sur aucune touche, continuer quand même le programme.

Merci pour votre aide (pour ceux qui arrive a comprendre ce que j'ai écrit ;) ).
samedi 6 décembre 2003 à 18:21:03 | Re : comment gérer un sleep() et une siasie de touche en même temps?

djl

ca par exemple?

bool touche=false;
unsigned debut=clock();
while( (clock()-debut<2000) && !kbhit() )
{

}
// on sort de la boucle apres 2sec ou l'appuye d'une touche
samedi 6 décembre 2003 à 19:24:14 | Re : comment gérer un sleep() et une siasie de touche en même temps?

capunk

Ca ma l'air pas mal!!
Mais peux tu m'expliquer la commande kbhit() stp... :
Est ce qu'elle permet de récupérer la valeur de la touche enfoncée, faut il utiliser un fichier d'entête en particulier pour utiliser cette fonction...

Merci de m'avoir répondu aussi vite .... :)
Merci d'avance a celui qui m'éclairera... ;)
samedi 6 décembre 2003 à 19:31:24 | Re : comment gérer un sleep() et une siasie de touche en même temps?

djl


eu... c'est conio.h je croi pour kbhit mais si tu est sous devc++ tu pourra pas, t'es sous quel compilo?

kbhit() retourn 1 si une touche est enfoncé, 0 sinon pour recuperer la valeur de la touche enfoncer:



bool touche=false;
char c;
unsigned debut=clock();
while( (clock()-debut<2000) && !touche )
{
if(kbhit()) c=getch();
}
// on sort de la boucle apres 2sec ou l'appuye
// d'une touche et c contient le caracter saisie
samedi 6 décembre 2003 à 19:32:51 | Re : comment gérer un sleep() et une siasie de touche en même temps?

djl

en fait c'est ca


bool touche=false;
char c;
unsigned debut=clock();
while( (clock()-debut<2000) && !touche )
{
if(kbhit()){ c=getch(); touche=true;}
}
// on sort de la boucle apres 2sec ou l'appuye
// d'une touche et c contient le caracter
// saisie

samedi 6 décembre 2003 à 21:37:07 | Re : comment gérer un sleep() et une siasie de touche en même temps?

capunk

J'utilise le compilateur fournit de base avec linux (mandrake 9.1).
Je ne connais pas le nom ni la version.
Ca marchera quand même?

Merci encore ! ;)


Cette discussion est classée dans : programme, temps, utilisateur, touche, sleep


Répondre à ce message

Sujets en rapport avec ce message

bomberman avec turbo c++ [ par xav42 ] Bonjour, je suis étudiant et à mon iut on utilise turbo c++ qui date un peumais bon...Voici mon probleme :j'ai un projet pour la fin de l'annee: fair bomberman avec turbo c++ [ par xav42 ] Bonjour, je suis étudiant et à mon iut on utilise turbo c++ qui date un peumais bon...Voici mon probleme :j'ai un projet pour la fin de l'annee: fair MFC, Thread [ par Sebaplus ] Salut,je programme avec les mfc. J'ai dans mon programme une boucle while qui est un peu longue, je voulais l'interrompre lorsqu'on presse la touche e Tâche de fond: comment communiquer avec l'utilisateur? [ par vychnou ] Bonjour à tous !Voici mon problème:je code un petit programme qui marche comme un supplément pour une grosse application.En clair, l'utilisateur est e AIDE SVP ! Programme qui délogue l'utilisateur [ par guilt92 ] Bonjour.Je voudrais réaliser un programme, qui, sous NT, ferme la session d'un utilisateur si la session reste verouillée trop longtemps ou si l utili keybd_event et sleep [ par Xentor609 ] salut,J'utilise keybd_event pour simuler des touches du clavier.Juste qu'ici, j'ai aucun problème.Mais imaginons que j'utilise un sleep juste après, l Trapèzes et intégrales [ par Pallas4 ] Voila je doit faire un programme calculant une intégrale par la méthode des trapèzes, plus précisément celle de Romberg. Et il faudrai qu'au lancement Envoyer une touche [ par frzburn ] Je veux me faire un petit programme pour activer des cheats dans Vice City. Mais je ne veux pas modifier des trucs dans la mémoire, je veux utiliser Crée l'interface utilisateur de son programme en C++ [ par LuLLy ] Bonjour, j'aimerais savoir comment crée l'interface utilisateur de son programme en C++ . mERCI Prob avec Sleep [ par blinkseb ] Bonjour à tous,j'ai besoin de tracer un cercle (en réalité c'est une ellipse mais le prob reste le même !) en un certain temps.Je calcule dont le nomb


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,359 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales