Я пытаюсь рассчитать разницу между двумя time_t
.
, но difftime
возвращает свой первый параметр вместо разницы!
Мой код:difftime возвращает неверное значение в MinGW
#include <windows.h>
#include <stdio.h>
#include <time.h>
#include <unistd.h>
int main(){
time_t etime_t,now_t;
double time_diff;
now_t=1388525484L;
etime_t=1389338644L;
time_diff=difftime(now_t,etime_t);
printf("%f",time_diff);
}
И печатает:
1388525484.000000
Я компиляции с GCC
(в MinWG
)
В чем проблема?
ясно это #define difftime (t1, t0) (двойной) (t1 - t0) .could вас попробуйте один раз, просто распечатав «double (t1-t0)» direclty in printf() – user2760375
'difftime (etime_t, now_t);'? (вы делаете предположения о реализации типа time_t плохим.) – BLUEPIXY
@kripanand: вычитание в порядке! только 'difftime' терпит неудачу! – RYN