社区
硬件/系统
帖子详情
VC里面有没有计时的函数
helloeveryone2003
2003-09-26 04:43:02
请问各位大侠:
例如:
我想在一个函数里面调用另一个函数
并想计算所调用的函数执行了多少时间:
VC里面有没有这样的函数呢?
或有问时间处理的函数是哪些呢?
...全文
155
8
打赏
收藏
VC里面有没有计时的函数
请问各位大侠: 例如: 我想在一个函数里面调用另一个函数 并想计算所调用的函数执行了多少时间: VC里面有没有这样的函数呢? 或有问时间处理的函数是哪些呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gaoshengqiang
2003-09-28
打赏
举报
回复
//头文件:
// TimeTick.h: interface for the CTimeTick class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_TIMETICK_H__94CE96CE_FD81_4802_BA80_5FDBC18A4C3B__INCLUDED_)
#define AFX_TIMETICK_H__94CE96CE_FD81_4802_BA80_5FDBC18A4C3B__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CTimeTick
{
public:
CString StopString();
double Stop();
void Start();
CTimeTick();
virtual ~CTimeTick();
protected:
LARGE_INTEGER m_OldCount;
double m_Freq;
};
#endif // !defined(AFX_TIMETICK_H__94CE96CE_FD81_4802_BA80_5FDBC18A4C3B__INCLUDED_)
//Cpp文件:
// TimeTick.cpp: implementation of the CTimeTick class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "TimeTick.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CTimeTick::CTimeTick()
{
QueryPerformanceFrequency(&m_OldCount);
// 获得计数器的时钟频率
m_Freq = (double)m_OldCount.QuadPart;
}
CTimeTick::~CTimeTick()
{
}
void CTimeTick::Start()
{
TRACE(_T("Timer running...\n"));
QueryPerformanceCounter(&m_OldCount);
}
double CTimeTick::Stop()
{
LONGLONG QPart1,QPart2;
double dfMinus, dfTim;
// 获得初始值
QPart1 = m_OldCount.QuadPart;
QueryPerformanceCounter(&m_OldCount);
// 获得中止值
QPart2 = m_OldCount.QuadPart;
dfMinus = (double)(QPart2 - QPart1);
// 获得对应的时间值
dfTim = dfMinus * 1000 / m_Freq;
TRACE(_T("Has token %f ms.\n"),dfTim);
return dfTim;
}
CString CTimeTick::StopString()
{
CString str;
str.Format(_T("Has token %f ms.\r\n"),Stop());
return str;
}
使用方法:
CTimeTick TimeTick;
...
TimeTick.Start();
func();//执行要测试的函数
TRACE(TimeTick.StopString);//在调试窗口中输出用过的时间数,以毫秒计
howtotell
2003-09-28
打赏
举报
回复
#include <time.h>
clock_t total;
clock_t start=clock();
//what you want to do.
clock_t end=clock();
CString result;
result.Format("%s%f%s","共耗时",(double)(end-start)/CLK_TCK," 秒");
thundenet
2003-09-28
打赏
举报
回复
DWORD start=GetTickCount();
func();//执行要测试的函数
DWORD result=GetTickCount()-start;//result就是func用的毫秒数
GetTickCount()是计算你的系统已经启动的时间(单位:millisecond)
helloeveryone2003
2003-09-27
打赏
举报
回复
time span is 0
PandaFeng
2003-09-27
打赏
举报
回复
for(DWORD i=0;i<5000000;i++) //看看
helloeveryone2003
2003-09-26
打赏
举报
回复
void CTestDlg::OnButton1()
{
DWORD ms,lms;
char sz[32];
ms=GetTickCount();
OnButton2();
lms=GetTickCount();
lms=lms-ms;
sprintf(sz,"time span is%d",lms);
MessageBox(sz,"time",MB_OK);
}
void CTestDlg::OnButton2()
{ int h=0,n=0;
for(WORD i=0;i<50000;i++)
{h=n+1;
h=n-1;
}
}
为什么结果是:time span is 0 呢
好像没有计里呀
这是为什么呢
bluebohe
2003-09-26
打赏
举报
回复
GetTickCount();
akiko
2003-09-26
打赏
举报
回复
DWORD dw0=GetTickCount();
func();//执行要测试的函数
DWORD dw=GetTickCount()-dw0;//dw就是func用的毫秒数
一个
VC
计时
器
函数
代码.rar
在这个"
VC
计时
器
函数
代码.rar"压缩包中,我们很可能会找到一个关于如何在MFC(Microsoft Foundation Classes)框架下使用
计时
器的示例源码。 在
VC
++中,通常有两种类型的
计时
器:Windows消息
计时
器和定时器对象。...
VC
制作的倒
计时
小程序
【
VC
制作的倒
计时
小程序】是一个利用Visual C++(简称
VC
)开发的简单应用程序,它的主要功能是帮助用户计算并显示从当前时间到用户自定义日期之间的剩余时间,即倒
计时
。这个小程序适用于各种场景,比如考试、生日、...
VC
LED风格倒
计时
.rar
**
VC
LED风格倒
计时
详解** 在编程领域,特别是Visual C++(简称
VC
)开发中,程序员经常需要创建各种用户界面元素以提升软件的用户体验。本文将深入探讨一个名为"
VC
LED风格倒
计时
"的项目,它不仅是一个实用的倒
计时
...
VC
++倒
计时
源码
【
VC
++倒
计时
源码】是一个用于学习和交流的编程资源...通过研究和理解这个【
VC
++倒
计时
源码】,开发者可以深入学习到
VC
++编程的基础知识、MFC框架的应用以及时间处理等实用技能,同时也有助于提升软件设计和调试能力。
vc
线程通信实现
计时
器
如果需要更精确的定时控制,可以使用`CreateTimerQueueTimer`
函数
,它提供了基于系统时间的
计时
器,而不是依赖于消息泵。 在实现线程通信的
计时
器时,我们需要考虑线程安全问题。例如,如果线程A修改了一个全局变量...
硬件/系统
2,643
社区成员
17,229
社区内容
发帖
与我相关
我的任务
硬件/系统
VC/MFC 硬件/系统
复制链接
扫一扫
分享
社区描述
VC/MFC 硬件/系统
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章