C++ 时间相关操作
约 243 字 预计阅读 1 分钟
1
2
3
4
5
6
7
8
9
| // #include <time.h>
#include <ctime>
clock_t st_time = clock();
// 其他程序
clock_t ed_time = clock();
// 以秒为单位
double time_dif = double (ed_time - st_time) / CLOCKS_PER_SEC;
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| #include <sys/time.h>
// 数据结构定义
// struct timeval {
// long tv_sec; // 秒
// long tv_usec; // 微秒(百万分之一秒)
// };
struct timeval st_time, ed_time;
gettimeofday(&st_time, NULL);
// 其他程序
gettimeofday(&ed_time, NULL);
// 以秒为单位
double time_dif = ed_time.tv_sec - st_time.tv_sec + (ed_time.tv_usec - st_time.tv_usec) / 1000000.0;
|
1
2
3
4
5
6
7
8
| #include <chrono>
auto st_time = std::chrono::steady_clock::now();
// 其他程序
auto ed_time = std::chrono::steady_clock::now();
// 以秒为单位
double time_dif = (ed_time - st_time).count() / 1000000.0;
|
1
2
3
| #include <chrono>
// 休眠5s
std::this_thread::sleep_for(std::chrono::seconds(5));
|