Ajouter un timmer ?
Résolu
Xifly
Messages postés
49
Statut
Membre
-
Xifly Messages postés 49 Statut Membre -
Xifly Messages postés 49 Statut Membre -
Bonjour,
Je souhaiterai executer une fonction (ici nommée display) toutes les 10 secondes.
Je voudrai que cette fonction se redemarre à zéros peut importe où elle en était toutes les 10 secondes.
Je pensais y parvenir ainsi mais malheureusement ça ne fonctionne pas :
Si vous pouvez m'aider ça serait gentil.
Merci d'avance,
Xifly
Je souhaiterai executer une fonction (ici nommée display) toutes les 10 secondes.
Je voudrai que cette fonction se redemarre à zéros peut importe où elle en était toutes les 10 secondes.
Je pensais y parvenir ainsi mais malheureusement ça ne fonctionne pas :
time_t timer;
timer = time(NULL);
if (timer = time(NULL) + 10)
{
score=display(tab_lamp, score);
timer = time(NULL);
}
Si vous pouvez m'aider ça serait gentil.
Merci d'avance,
Xifly
A voir également:
- Ajouter un timmer ?
- Ajouter un profil netflix payant - Accueil - Guide streaming
- Impossible d'ajouter un ami sur facebook - Guide
- Ajouter un compte whatsapp - Guide
- Ajouter un compte facebook - Guide
- Ajouter liste déroulante excel - Guide
1 réponse
salut,
-ne pas confondre = et ==
-time_t n'est pas en secondes
-if n'est exécuté qu'une fois, sauf si il est dans une boucle
-si il était dans une boucle timer changerais a chaque fois et +10 n'est jamais atteint
-il y a bien un moyen de faire de cette façon mais cela utiliserais le processeur a son maximum, il vaut mieux chercher une fonction sleep adapté à ton système d'exploitation
-ne pas confondre = et ==
-time_t n'est pas en secondes
-if n'est exécuté qu'une fois, sauf si il est dans une boucle
-si il était dans une boucle timer changerais a chaque fois et +10 n'est jamais atteint
-il y a bien un moyen de faire de cette façon mais cela utiliserais le processeur a son maximum, il vaut mieux chercher une fonction sleep adapté à ton système d'exploitation
Le problème est que pendant la fonction, l'utilisateur est amené a entrer des valeurs donc je ne peux mettre le programme en sleep (d'après ce que j'ai compris).
Mais en effet le n'égale jamais . Donc rien ne s'affiche
while(score<10) { if (clock() >= timer + delais_en_secondes*CLOCKS_PER_SEC ) { score=display(tab_lamp, score); timer = clock(); } }EDIT: clock_t a la place de time_t c'est plus simple, si tu veux rester en time_t il faudrait utiliser la fonction difftime
Car ça me met un message d'erreur : "unknow type".
Et il me dit que n'est pas déclaré.