您当前的位置:首页 > 计算机 > 编程开发 > VC/VC++

获取当前系统时间+计算代码执行时间

时间:09-15来源:作者:点击数:

获取当前系统时间

  • 方法1 使用Win API :GetLocalTime()函数实现 精确到毫秒
#include <windows.h>
#include <stdio.h>
using namespace std;
int main() 
{
    SYSTEMTIME time;
    GetLocalTime(&time);
    //获取系统时间-年月日时分秒毫秒
    printf("%04d/%02d/%02d %02d:%02d:%02d:%03d", time.wYear, time.wMonth, time.wDay, time.wHour, time.wMinute, time.wSecond, time.wMilliseconds);
    return 0;
}

输出结果

在这里插入图片描述
  • 方法2 VS提供的ATL模板库 :CTime::GetCurrentTime()实现
CTime day;
day = CTime::GetCurrentTime();
int filenameyear,filenamemonth,filenameday, filehour, filemin, filesec;
filenameyear = day.GetYear();//yyyy年
filenamemonth = day.GetMonth();//mm月份
filenameday = day.GetDay();//dd日
filehour = day.GetHour();//hh时
filemin = day.GetMinute();//mm分钟
filesec = day.GetSecond();//ss秒
CString timeStr;
timeStr.Format("%04d-%02d-%02d %02d_%02d_%02d", filenameyear, filenamemonth, filenameday, filehour, filemin, filesec);

//也可以简便一点
 CTime time1=CTime::GetCurrentTime();//获取当前时间
 CString str=time1.Format("%Y-%m-%d %H:%M:%S");
#include <windows.h>
#include<atltime.h>//必须包含此头文件
#include <stdio.h>
using namespace std;
int main() 
{
    CTime time = CTime::GetCurrentTime();
    printf("%04d/%02d/%02d %02d:%02d:%02d", time.GetYear(), time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond());
    return 0;
}

输出结果

在这里插入图片描述


计算代码执行时间

  • 方法1

同样是使用之前先包含头文件

#include<windows.h> 

具体代码实现如下:

//计算时间差
DWORD startTime=GetTickCount();
//----程序过程-----//
DWORD endTime=GetTickCount();
CString str;
str.Format("消耗的时间 %d ms",endTime-startTime);
//调试输出
OutputDebugString(str);
TRACE(str);
  • 方法2

使用clock()函数需要包含time.h这个头文件,C++中包含ctime这个头文件。

#include<time.h>
clock_t cstart,cends;  
cstart=clock();
long sum1 =0;
long a1[5][10000000];
for(long i = 0; i < 5; i++)                
{
	for(long j = 0; j < 10000000; j++)
	{
		sum1 += a1[i][j];
	}
}
cout << "sum1=:" << sum1 << endl;
cends=clock();  
cout << "Clock时间差:" << (cends-cstart)/ CLOCKS_PER_SEC << endl;  
//计算出来的时间差为了方便阅读理解可以除以CLOCKS_PER_SEC这个常量化为秒
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐