简介本文介绍C++获取程序运行时间:可精确到纳秒、毫秒级时间。对于C++开发过程中计算某段代码的运行时间、提交代码性能有一定的参考价值。
话不多说,直接上代码,一键操作。
#include <iostream>
#include <chrono>
using namespace std;
using namespace chrono;
// 算法示例
void Test()
{
for (int i = 0; i < 10; i++)
{
std::cout << "C++实战网(www.cppszw.com)" << std::endl;
}
}
int main()
{
typedef std::chrono::high_resolution_clock Clock;
auto t1 = Clock::now();// 计时开始
Test();
auto t2 = Clock::now();// 计时结束
std::cout << "用时(纳秒):" << std::chrono::duration_cast<std::chrono::nanoseconds>(t2 - t1).count() << std::endl;
//std::cout << "用时(毫秒):" << std::chrono::duration_cast<std::chrono::nanoseconds>(t2 - t1).count() / 1e+6 << std::endl;
//std::cout << "用时(秒):" << std::chrono::duration_cast<std::chrono::nanoseconds>(t2 - t1).count() / 1e+9 << std::endl;
}
运行结果:
#include <iostream>
#include <windows.h>
// 算法示例
void Test()
{
for (int i = 0; i < 10; i++)
{
std::cout << "C++实战网(www.cppszw.com)" << std::endl;
}
}
int main()
{
double start_time = GetTickCount();
Test();
double end_time = GetTickCount();
double dSecond = end_time - start_time;
std::cout << "用时(毫秒):" << dSecond << std::endl;
}
运行结果:
本文向大家介绍一个C++实战项目:C++实现雪花算法(SnowFlake)产生唯一ID,主要涉及雪花算法、算法知识等,具有一定的C++实战价值,感兴趣的朋友可以参考一下。
本文介绍一个C++代码片段:如何在C++中删除一个文件目录下的所有文件及目录,感兴趣的朋友可以参考一下。
本文介绍C++实现C++实现8种排序算法,主要包括冒泡排序、插入排序、二分插入排序、希尔排序、直接选择排序、堆排序、归并排序、快速排序,直接上代码,感兴趣的朋友可以参考一下。
本文介绍C++实现线程同步的四种方式:事件对象、互斥对象、临界区、信号量,感兴趣的朋友可以参考一下。
本文介绍C++内存泄漏的检测与定位方法,感兴趣的朋友可以参考一下。
本文向大家介绍一个C++实战项目:C++实现一个多线程安全的队列容器模板类,主要涉及C++模板类的使用、互斥体实现多线程安全、队列数据结构等知识,具有一定的C++实战价值,感兴趣的朋友可以参考一下。