21xrx.com
2024-12-23 03:53:08 Monday
登录
文章检索 我的文章 写文章
C++获取程序运行时间
2023-06-23 00:14:38 深夜i     --     --
C++ 程序运行时间 获取

在编写C++程序时,了解程序的运行时间是很重要的。在程序的调试和优化过程中,获取程序的运行时间可以帮助开发者定位问题,提高程序的运行效率。下面将介绍C++获取程序运行时间的方法。

一、使用clock函数

C++标准库提供了一个clock函数可以用来获取程序的运行时间。clock函数返回的是程序运行到当前时刻的CPU时间,单位为毫秒。下面是使用clock函数获取程序运行时间的代码示例:


#include <iostream>

#include <ctime>

using namespace std;

int main() {

  clock_t start, end;

  start = clock();  //记录程序开始时刻

  // 此处插入程序代码

  end = clock();   //记录程序结束时刻

  double time = (double)(end - start) / CLOCKS_PER_SEC * 1000;

  cout << "程序运行时间为 " << time << " 毫秒" << endl;

  return 0;

}

在程序运行开始时,使用clock函数记录当前时刻作为程序的起始时间;程序运行结束时,使用clock函数再次记录当前时刻作为程序的结束时间。将二者的时间戳相减,即可得到程序的运行时间。最后将运行时间转换为毫秒并输出即可。

二、使用chrono库

在C++11标准中,新增加了一个chrono库用于管理时间。该库提供了高精度的计时器,可以更准确地获取程序的运行时间。下面是使用chrono库获取程序运行时间的代码示例:


#include <iostream>

#include <chrono>

using namespace std;

using namespace chrono;

int main() {

  auto start = high_resolution_clock::now();  //记录程序开始时刻

  // 此处插入程序代码

  auto end = high_resolution_clock::now();   //记录程序结束时刻

  auto duration = duration_cast<milliseconds>(end - start).count();

  cout << "程序运行时间为 " << duration << " 毫秒" << endl;

  return 0;

}

在程序运行开始时,使用high_resolution_clock::now()函数记录当前时刻作为程序的起始时间;程序运行结束时,使用同样的方式记录当前时刻作为程序的结束时间。将二者的时间戳相减,并使用duration_cast函数将其转换为毫秒,即可得到程序的运行时间。最后将运行时间输出即可。

总结:

获取程序运行时间是编写、调试和优化C++程序时的必备技能。无论是使用clock函数还是使用chrono库,都可以轻松地获取程序的运行时间。开发者可以根据自己的需求选择合适的方法,以便更好地进行程序优化和性能测试。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复