Peut m'expliquer ce tt petit morceau de code SVP ? merci bcp :) [C] - C++ - Programmation
Marsh Posté le 18-02-2003 à 14:25:04
Ca bouffe du CPU comme un con pendant un certain nombre de secondes passé en paramètre.
PS: http://www.hmug.org/man/3/clock.html
Marsh Posté le 18-02-2003 à 14:26:50
ouais dans le cas d'un os multi-tâches c'est de la bonne programmation de porc
Marsh Posté le 18-02-2003 à 14:32:03
donc:
clock() c'est une fonction qui te retourne certainement un entier qui représente le temps passé depuis le démarrage de windows ou un truc du genre.
CLOCKS_PER_SEC doit te donner l'évolution de ce que te donne clock(), par seconde.
donc si c'est j'en sais rien 1000 pour CLOCKS_PER_SEC, entre 2 secondes, la valeur retournée par clock() aura augmentée de 2000.
comme le but c'est d'attendre, tu as "goal" qui t'indiques la valeur à atteindre avant de sortir de la boucle d'attente.
comme tu veux attendre X secondes, ça fait une différence X*CLOCKS_PER_SEC à atteindre entre le début et la fin d'attente.
donc la valeur à atteindre est = X*CLOCKS_PER_SEC + clock()
d'ou le while( goal > clock() ):
on boucle comme un con sans rien faire, en attendant que clock() retourne une valeur de temps supérieure à la fin calculée précédemment.
Marsh Posté le 18-02-2003 à 14:35:43
BJOne a écrit : donc: |
Justement, c'est là ou ça devient très con, c'est que clock() retourne la quantitée de temps utilisée par le processus. Ce qui veut dire que sur une machine bien chargée, ça va joyeusement dériver :°)
Marsh Posté le 18-02-2003 à 14:40:14
kadreg a écrit : |
ha désolé j'avais pas lu
Marsh Posté le 18-02-2003 à 14:40:56
c'est vraiment du code de porc dans tout sa splendeur alors !!!
Marsh Posté le 18-02-2003 à 14:46:44
BJOne a écrit : c'est vraiment du code de porc dans tout sa splendeur alors !!! |
preuve de ma bone fois c pas moi qui ai pondu ce code mais campupress (pour ce que ca interresse http://www.campuspress.fr/Document [...] Prog_c.zip application 3 )
Marsh Posté le 18-02-2003 à 15:01:11
oué, c'est à titre éducatif, ils se sont concentré sur un truc qui marche vaguement....
je supposes que c'est pour débutant, donc ils ont ptet pas voulu vous jeter à la figure les concepts du mutli-tâche...
Marsh Posté le 18-02-2003 à 15:04:15
BJOne a écrit : oué, c'est à titre éducatif, ils se sont concentré sur un truc qui marche vaguement.... |
a ca marche tres bien oui je pense qu'il veulent pas prendre la tete a des petits debutants comme moi lol merci pr les explications en tt cas
Marsh Posté le 20-02-2003 à 09:23:09
kadreg a écrit : clock() retourne la quantitée de temps utilisée par le processus. |
C'est ce que j'ai lu moi aussi...
Sous VC++ 6 ça mesure le temps tout court.
Marsh Posté le 18-02-2003 à 14:23:25
hello world,
je m'interdit d'utiliser des choses que je ne comprend pas donc voici un morceau de code é je dois dire qu'apart le while... je ne comprend rien lol
voila voila
et comme tjs je suis sous Win XP , je programme en C sous borland c++ builder 6.0
merci beaucoup