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 documentation для difftime