VC中监测函数运行时间(一)—分钟,秒,毫秒
//myTimer.h // [10/16/2013 Duan Yihao] #pragma once #include "StdAfx.h" //////////////////////////////////////////////////////////////////////////
class myTimer
{ public:
myTimer(void);
~myTimer(void); public:
void start(void);
void end(void); void getRunTime(float &minute,float &second,float &millSecond); private: SYSTEMTIME stStar;
SYSTEMTIME stEnd; //
float m_minute;
float m_second;
float m_millSecond; }; //////////////////////////////////////////////////////////////////////////
//myTimer.cpp myTimer::myTimer(void)
{ m_minute=0.0;
m_second=0.0;
m_millSecond=0.0;
} myTimer::~myTimer(void)
{
} void myTimer::start(void)
{ GetLocalTime(&stStar);//获取算法处理前,系统时间 } void myTimer::end(void)
{ //
SYSTEMTIME st2;
GetLocalTime(&stEnd);//获取算法结束时系统时间
float tm1,tm2;
float ts1,ts2;
float tms1,tms2; tm1=stStar.wMinute;
tm2=stEnd.wMinute;//分 ts1=stStar.wSecond;
ts2=stEnd.wSecond;//秒 tms1=stStar.wMilliseconds;
tms2=stEnd.wMilliseconds;//毫秒 if (tms2<tms1)
{
tms2+=;
ts2-=;
}
if (ts2<ts1)
{
ts2+=;
tm2-=;
}
if (tm2<tm1)
{
tm2+=;
} m_minute=tm2-tm1;
m_second=ts2-ts1;
m_millSecond=tms2-tms1; //CString time;
//time.Format(_T("run time consume:%f min,%f s,%f ms"),tm2-tm1,ts2-ts1,tms2-tms1);
//AfxMessageBox(time); } void myTimer::getRunTime(float &minute,float &second,float &millSecond)
{
minute=m_minute;
second=m_second;
millSecond=m_millSecond;
} /*
//////////////////////////////////////////////////////////////////////////
//mfc下测试举例: void CtestMFCView::OnTest()
{ // TODO: 在此添加命令处理程序代码
//测试例子 //计时开始
myTimer t;
t.start(); //------------------------------------------------------------------------------
//>>>
for(int i = 0; i < 10; i++)
{
int n = i;
for(int i = 0; i < 100000; i++)
{
int n = i;
}
}
//<<<
//------------------------------------------------------------------------------ //计时结束
t.end(); //耗时显示
float m,s,ms;
t.getRunTime(m,s,ms); CString time;
time.Format(_T("run time consume:%f min, %f s, %f ms"),m,s,ms);
AfxMessageBox(time); } */
VC中监测函数运行时间(一)—分钟,秒,毫秒的更多相关文章
- VC中监测函数运行时间
VC++编程时,经常会监控某个算法的计算时间,以确定算法的效率.编码举例如下, //========start: algorithm time============= // SYSTEMTIME s ...
- VC中监测程序运行时间(二)-毫秒级
/* * 微秒级计时器,用来统计程序运行时间 * http://blog.csdn.net/hoya5121/article/details/3778487#comments * //整理 [10/1 ...
- 转:VC中UpdateData()函数的使用
VC中UpdateData()函数的使用 UpdateData(FALSE)与UpdateData(TRUE)是相反的过程 UpdateData(FALSE)是把程序中改变的值更新到控件中去 ...
- 转;VC++中Format函数详解
Format是一个很常用,却又似乎很烦的方法,以下是它的完整概貌,以供大家查询之用: 一.字符串 首先看它的声明: function Format(const Format: string; cons ...
- VC中function函数解析
C++标准库是日常应用中非常重要的库,我们会用到C++标准库的很多组件,C++标准库的作用,不单单是一种可以很方便使用的组件,也是我们学习很多实现技巧的重要宝库.我一直对C++很多组件的实现拥有比较强 ...
- 关于VC中LineDDA函数的调用
在项目里碰到这个函数,不知道怎么使用,记录在这里. 该函数的原型如下: BOOL LineDDA(int nXStart, int nYStart, int nXEnd, int nYEnd, LIN ...
- VC 中 UpdateData() 函数的使用
UpdateData(FALSE)与UpdateData(TRUE)是相反的过程 UpdateData(FALSE)是把程序中改变的值更新到控件中去 UpdateData(TRUE)是把在控件中输入的 ...
- java实现获取当前年月日 小时 分钟 秒 毫秒
java代码实现如下 view source print? /** * 英文简写(默认)如:2010-12-01 */ public static String F ...
- VC++中的延时函数
原文链接:http://www.educity.cn/develop/478947.html VC中提供了很多关于时间操作的函数,编写程序时我们可以跟据定时的不同精度要求选择不同的时间函数来完成定时和 ...
随机推荐
- usaco /the first wave
bzoj1572:贪心.先按时间顺序排序,然后用优先队列,如果时间不矛盾直接插入,否则判断队列中w最小的元素是否替换掉.(没用llWA了一次 #include<cstdio> #inclu ...
- android中的ellipsize设置(省略号的问题)
textview中有个内容过长加省略号的属性,即ellipsize,可以较偷懒地解决这个问题,哈哈~ 用法如下: 在xml中 android:ellipsize = "end" ...
- codevs 3123 高精度练习之超大整数乘法
fft. #include<iostream> #include<cstdio> #include<cstring> #include<complex> ...
- android开发调用c++共享库so文件
1.编写libaab.cpp #include <stdio.h>#include <stdlib.h> #ifdef __cplusplusextern "C&qu ...
- poj 2184 Cow Exhibition
// 给定n头牛,每头有属性智商和幽默感,这两个属性值有正有负,现在要从这n头牛中选出若干头使得他们的智商和与幽默感和不为负数,// 并且两者两家和最大,如果无解输出0,n<=100,-1000 ...
- 【转】Linux时间函数之gettimeofday()函数之使用方法
原文网址:http://blog.csdn.net/tigerjibo/article/details/7039434 一.gettimeofday()函数的使用方法: 1.简介: 在C语言中可以使用 ...
- Informatica 9.1常用查询
select a.mapping_name, a.mapping_id, a.subject_id, a.is_valid, b.pv_precision, c.pv_value, b.pv_defa ...
- Linux 中直接 I/O 机制的介绍
https://www.ibm.com/developerworks/cn/linux/l-cn-directio/ 对于传统的操作系统来说,普通的 I/O 操作一般会被内核缓存,这种 I/O 被称作 ...
- hdu 3746 Cyclic Nacklace(KMP)
题意: 求最少需要在后面补几个字符能凑成两个循环. 分析: 最小循环节的应用,i-next[i]为最小循环节. #include <map> #include <set> #i ...
- 《Python 学习手册4th》 第七章 字符串
''' 时间: 9月5日 - 9月30日 要求: 1. 书本内容总结归纳,整理在博客园笔记上传 2. 完成所有课后习题 注:“#” 后加的是备注内容 (每天看42页内容,可以保证月底看完此书) “重点 ...