Таймер в C Linux
Я пытался создать таймер, используя gettimeofday. Была вызвана функция "время" для сброса и получения текущего времени для таймера. Но программа выдает значения мусора, когда я пытался получить значение второго зубца. Пожалуйста помоги
#include<stdio.h>
#include <sys/time.h>
#include <stdlib.h>
struct timeval cur;
double time(int a);
main() {
time(0);
printf("%lf\n",time(1));
sleep(3);
printf("%lf\n",time(1));
}
double time(int a) {
double rtime;
if(a==0) {
gettimeofday(&cur,NULL);
rtime=(double)(cur.tv_sec);
printf("%lf\n",rtime);
} else if(a==1) {
gettimeofday(&cur,NULL);
return((double)(cur.tv_sec-rtime));
}
}
1 ответ
Ваша рутина time()
не вспомню rtime
если вы не укажете rtime
как статический:
static double rtime;
И еще: неясно, почему вы указываете эти числа как двойные.