Defined in header <time.h> | ||
---|---|---|
double difftime( time_t time_end, time_t time_beg ); |
Computes difference between two calendar times as time_t
objects (time_end - time_beg
) in seconds. If time_end
refers to time point before time_beg
then the result is negative.
time_beg, time_end | - | times to compare |
Difference between two times in seconds.
On POSIX systems, time_t
is measured in seconds, and difftime
is equivalent to arithmetic subtraction, but C and C++ allow fractional units for time_t
.
The following program computes the number of seconds that have passed since the beginning of the month.
#include <stdio.h> #include <time.h> int main(void) { time_t now; time(&now); struct tm beg; beg = *localtime(&now); // set beg to the beginning of the month beg.tm_hour = 0; beg.tm_min = 0; beg.tm_sec = 0; beg.tm_mday = 1; double seconds = difftime(now, mktime(&beg)); printf("%.f seconds have passed since the beginning of the month.\n", seconds); return 0; }
Output:
1937968 seconds have passed since the beginning of the month.
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/c/chrono/difftime