Namespaces
Variants

std:: difftime

From cppreference.net
< cpp ‎ | chrono ‎ | c
定义于头文件 <ctime>
double difftime ( std:: time_t time_end, std:: time_t time_beg ) ;

计算两个日历时间作为 std::time_t 对象的差值( time_end - time_beg ),以秒为单位。如果 time_end 指向的时间点早于 time_beg ,则结果为负数。

目录

参数

time_beg, time_end - 待比较的时间点

返回值

两个时间之间的秒数差。

注释

在POSIX系统中, std::time_t 以秒为单位计量,且 difftime 等效于算术减法运算,但C和C++允许 time_t 使用小数时间单位。

示例

#include <ctime>
#include <iostream>
int main()
{
    std::time_t start = std::time(nullptr);
    volatile double d = 1.0;
    // 耗时操作
    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";
}

可能的输出:

Wall time passed: 9 s.

参见

(C++11)
时间间隔
(类模板)
C 文档 for difftime