Rechercher : dans
Par :

Créer un timer en C

Dernière réponse le 28 nov 2007 à 20:46:32 Edward Withen, le 27 nov 2007 à 21:57:37 
 Signaler ce message aux modérateurs

Salut,
J'essaye de créer un timer en C, j'ai trouvé avec google sauf que, mon timer prend 100% du CPU (c'est une boucle infinie).

SVP, comment créer un timer en C (sous console) qui m'évite d'occuper tout mon CPU?

PS: Je suis sous windows.


D'avance merci.

Meilleures réponses pour « créer un timer en C » dans :
Les objets en langage C++ VoirLa création d'objets En C++, il existe deux façons de créer des objets, c'est-à-dire d'instancier une classe : de façon statique de façon dynamique La création statique La création statique d'objets consiste à créer un objet en lui affectant un...
Langage C - Les listes chaînées VoirLa notion de structure autoréferrentielle Une structure autoréferrentielle (parfois appelée structure récursive) correspond à une structure dont au moins un des champs contient un pointeur vers une structure de même type. De cette façon on crée...

1

le père, le 27 nov 2007 à 23:04:34

Bonsoir,

en visual C++, avec les fonctions time (time.h) et Sleep (winbase.h) tu devrais pouvoir écrire une boucle qui ne prend pas 100% du CPU

Répondre à le père

2

 Edward Withen, le 28 nov 2007 à 20:46:32
  • +1

Merci!!

et pour ceux qui veulent un exemple, souriez, en voilà un :

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
long sec; //on initialise sec pour les secondes à patienter

printf("Entrez le nombre de secondes \205 patienter :\n"); //on affiche le message à l'écran

scanf("%d", &sec); //on stocke le choix de l'utilisateur dans la variable sec


while (sec > 0) //on crée la boucle. Rassurez vous, celle-ci n'occupe pas votre CPU
{
printf("\rSecondes restantes : %03i", sec); //on affiche le temps restant. %03i veut dire afficher 3 nombres (055 au lieu de 55 par exemple)
sec--; //on décrémente la valeur de sec
sleep(1000); //patienter 1 000 ms (donc une seconde) dans chaque exécution de la boucle
}
return 0;
}


Voilà! Maintenant je vous souhaite une bonne programation!

Répondre à Edward Withen
Collection CommentÇaMarche.net