c++程序运行时间监视,及获取时间方法

方法一:

在C++的库函数中,我们可以使用clock()来计算程序的运行时间,主要使用一下三个函数类型及函数:

1、clock_t:数据类型,其实,当你打开time.h就知道了,就是个long型,用来记录一段时间内的clocks数,即CPU的运行单元时间;

2、clock():返回类型clock_t,返回的是从程序开始,到你调用clock()函数这段时间的clocks;
3、CLOCKS_PER_SEC:它用来表示一秒钟会有多少个时钟计时单元,即:

     #define   CLOCKS_PER_SEC ((clock_t)1000) 
     可以看到每过千分之一秒(1毫秒),调用clock()函数返回的值就加1。

下面举个例子,你可以使用公式clock()/CLOCKS_PER_SEC来计算一个进程自身的运行时间:

我们若想计算程序的运行时间,则只要根据程序的入口点和出口点出都计算clocks,再算差就可以了,都是在main()中进行操作,如下:
 int main() {
   clock_t start, end;

   start = clock();  
.......//要记录运行时间的程序段;
  end = clock();
        cout<<"Run time: "<<(double)(end - start) / CLOCKS_PER_SEC<<"S"<<endl;

//要记录分钟的话,上面的程序改为(double)(end - start) / CLOCKS_PER_SEC/60即可;
   return 0;
    }

方法二:

使用ctime库函数获取机器时间

#include <iostream>
#include <ctime> /* time.h in C */
using namespace std;

int main()
{
	time_t now;	
	struct tm *fmt;

	time(&now);
	fmt = localtime(&now);

	cout << "Hours:\t\t" << fmt->tm_hour << endl;
	cout << "Minutes:\t" << fmt->tm_min << endl;
	cout << "Seconds:\t" << fmt->tm_sec << endl;
	return 0;
}
或者用CTime类获取:

CTime t = CTime::GetCurrentTime(); //获取系统日期
int d=t.GetDay(); //获得几号
int y=t.GetYear(); //获取年份  
int m=t.GetMonth(); //获取当前月份   
int h=t.GetHour(); //获取当前为几时   
int mm=t.GetMinute(); //获取分钟   
int s=t.GetSecond(); //获取秒
方法三:
使用API函数
GetTickCount()这个API函数的功能是实现从操作系统启动到现在所经过的毫秒数,它的返回值是DWORD类型。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值