C++计算执行时间错误

标签 c++ time count execution

我正在尝试计算我的代码中函数的执行次数(这需要一个多小时),并且我正在使用 clock(),但我遇到了一些错误,因为计算的时间是负数。我这样做:

long double time;
clock_t start, t_end;

t_start = clock();
algorithm->execute();
t_end = clock();

time = ((long double) t_end - t_start) / CLOCKS_PER_SEC;

cout << time << endl;

我做错了什么吗?

最佳答案

CLOCKS_PER_SEC 是 1000000 并且 clock() 返回一个带符号的 32 位值,因此将在大约 36 分钟后变为负值并在大约 72 分钟后换行。

参见 http://www.guyrutenberg.com/2007/09/22/profiling-code-using-clock_gettime有关如何衡量长执行时间的详细信息。

关于C++计算执行时间错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3077198/

相关文章:

C++ : error: invalid operands of types ‘String*’ and ‘const char [7]’ to binary ‘operator+’

javascript - 计算资源的可用性

mysql - 当给定日期增量的计数为 0 时,如何处理 MySQL 中按日期计数的项目?

python - 计算从给定日期算起固定天数的日期

CLOCK_REALTIME、CLOCK_MONOTONIC、CLOCK_MONOTONIC_RAW 值。

ruby-on-rails - 使用条件 Rails 按计数范围排序

count - flink 表统计具有相同条目的行数

C++ 堆栈使用模板化链表 - 内存泄漏

c++ - boost multi_index 的随机访问索引上的partial_sort

c++ - QVector 与 QList