Forum » Programiranje » [C] Timer
[C] Timer
littlepsyho ::
Jaz pa imam sledeč problem,
uporabljam funkcijo timer katera mi v while zanki "štopa" čas med dvema pritiskoma,
prvi čas je pravilen, problem pa je da vsako nadalno meritev pokaže kot nadaljevanje prejšnje,
koda bi z koncem štopanja samo pavziralo čas in ga pol nadaljuje, jaz pa želim čas vsake meritve posebej.....any ideas?
thx, lp.
#include time.h
#include stdio.h
clock_t BeginTimer()
{
clock_t Begin; //initialize Begin
Begin = clock() * CLK_TCK; //start the timer
return Begin;
}
clock_t EndTimer(clock_t begin)
{
clock_t End;
End = clock() * CLK_TCK; //stop the timer
return End;
}
int main ()
{
while(1)
{
printf ("Enter something to start the timer:\n ");
getch();
double begin = BeginTimer();
printf ("Timer set to: %.2f\n", begin/1000000); // print the initialised timer (0)
printf ("Enter something to stop the timer:\n ");
getch();
float elapTicks;
float elapMilli, elapSeconds, elapMinutes;
elapTicks = EndTimer(begin); // stop the timer, and calculete the time taken
elapSeconds = elapTicks/1000000; // seconds from Begin to End
printf ("Seconds passed: %.2f\n", elapSeconds);
}
getch();
return 0;
}
uporabljam funkcijo timer katera mi v while zanki "štopa" čas med dvema pritiskoma,
prvi čas je pravilen, problem pa je da vsako nadalno meritev pokaže kot nadaljevanje prejšnje,
koda bi z koncem štopanja samo pavziralo čas in ga pol nadaljuje, jaz pa želim čas vsake meritve posebej.....any ideas?
thx, lp.
#include time.h
#include stdio.h
clock_t BeginTimer()
{
clock_t Begin; //initialize Begin
Begin = clock() * CLK_TCK; //start the timer
return Begin;
}
clock_t EndTimer(clock_t begin)
{
clock_t End;
End = clock() * CLK_TCK; //stop the timer
return End;
}
int main ()
{
while(1)
{
printf ("Enter something to start the timer:\n ");
getch();
double begin = BeginTimer();
printf ("Timer set to: %.2f\n", begin/1000000); // print the initialised timer (0)
printf ("Enter something to stop the timer:\n ");
getch();
float elapTicks;
float elapMilli, elapSeconds, elapMinutes;
elapTicks = EndTimer(begin); // stop the timer, and calculete the time taken
elapSeconds = elapTicks/1000000; // seconds from Begin to End
printf ("Seconds passed: %.2f\n", elapSeconds);
}
getch();
return 0;
}
celebro ::
V EndTimer si pozabil odšteti oba časa (clock_t begin ne uporabiš, čeprav ga imaš med argumenti).
celebro ::
V funkciji "clock_t EndTimer(clock_t begin)" vračaš vrednost spremenljivke "End", pravilno bi bilo vrniti razliko med spremenljivkama "End" in "begin".
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Algoritmi za urejanje tabelOddelek: Programiranje | 1226 (963) | lebdim |
» | [C++]čas izvajanje zanke/programaOddelek: Programiranje | 1034 (619) | NSA Agent |
» | Time.h v c-ju.Oddelek: Programiranje | 1018 (821) | Wrop |
» | [c++] odstevanjeOddelek: Programiranje | 917 (818) | 64202 |
» | domači benchmark programOddelek: Programiranje | 1107 (961) | ruph |