C中两个日期之间的秒数差异

joe*_*sid 1 c algorithm time-t time.h difftime

我想计算两个日期之间的秒数差异,但结果是0.

这是代码:

time_t=time(NULL);
struct tm * timeNow=localtime();
time_t start=mktime(&*timeNow);
time_t end=mktime(&*recordFind->timeInserted);

double seconds=difftime(start,end);
Run Code Online (Sandbox Code Playgroud)

recordFind->timeInserted 是的,因为我打印他的成员并且没问题,但是当我打印秒数是0.000000;

Dav*_*eri 5

你要

double seconds = difftime(end, start);
Run Code Online (Sandbox Code Playgroud)

代替

double seconds = difftime(start, end);
Run Code Online (Sandbox Code Playgroud)

而你忘记命名变量time_t=time(NULL);,改为:

time_t now;
double seconds;

time(&now);
seconds = difftime(now, mktime(&recordFind->timeInserted));
Run Code Online (Sandbox Code Playgroud)