std::difftime
From cppreference.com
C++
Feature test macros (C++20)
Concepts library (C++20)
Metaprogramming library (C++11)
Ranges library (C++20)
Filesystem library (C++17)
Concurrency support library (C++11)
Execution control library (C++26)
Date and time library
(C++11)
(C++20)
(C++20)
(C++11)
(C++11)
(C++11)
(C++20)
(C++20)
(C++20)
(C++11)
(C++20)
(C++20)
(C++20)
(C++20)(C++20)
(C++20)(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)(C++20)
(C++20)
(C++20)
(C++20)
(C++20)(C++20)(C++20)(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
Defined in header
<ctime>
double difftime( std::time_t time_end, std::time_t time_beg );
Computes difference between two calendar times as std::time_t objects (time_end - time_beg) in seconds. If time_end refers to time point before time_beg then the result is negative.
Contents
[edit] Parameters
time_beg, time_end
-
times to compare
[edit] Return value
Difference between two times in seconds.
[edit] Notes
On POSIX systems, std::time_t is measured in seconds, and difftime
is equivalent to arithmetic subtraction, but C and C++ allow fractional units for time_t
.
[edit] Example
Run this code
#include <ctime> #include <iostream> int main() { std::time_t start = std::time (nullptr); volatile double d = 1.0; // some time-consuming operation for (int p = 0; p < 10000; ++p) for (int q = 0; q < 100000; ++q) d = d + p * d * q + d; std::cout << "Wall time passed: " << std::difftime(std::time (nullptr), start) << " s.\n"; }
Possible output:
Wall time passed: 9 s.
[edit] See also
C documentation for difftime