您的位置:首页 > 其它

MFC中获得系统时间的方法

2015-04-15 10:05 267 查看
【转载】http://blog.csdn.net/liufei_learning/article/details/6053965
使用CTime类  
CString str; //获取系统时间   
CTime tm; tm=CTime::GetCurrentTime();   
str=tm.Format("现在时间是%Y年%m月%d日 %X"); MessageBox(str,NULL,MB_OK);  
2: 得到系统时间日期(使用GetLocalTime)  
SYSTEMTIME st;  
CString strDate,strTime;  
GetLocalTime(&st);  
strDate.Format("%4d-%2d-%2d",st.wYear,st.wMonth,st.wDay);  
strTime.Format("%2d:%2d:%2d",st.wHour,st.wMinute,st.wSecond);  
3.使用GetTickCount//获取程序运行时间 
  
long t1=GetTickCount();//程序段开始前取得系统运行时间(ms) 
  
Sleep(500); long t2=GetTickCount();//程序段结束后取得系统运行时间(ms) 
  
str.Format("time:%dms",t2-t1);//前后之差即 程序运行时间 
  
AfxMessageBox(str);//获取系统运行时间
  
long t=GetTickCount();   
CString str,str1;  
str1.Format("系统已运行 %d时",t/3600000);  
str=str1; t%=3600000;   
str1.Format("%d分",t/60000);   
str+=str1; t%=60000;   
str1.Format("%d秒",t/1000);   
str+=str1; AfxMessageBox(str);   
  
源文档 <http://blog.163.com/zhang672404141@126/blog/static/69227982200951234156411/> 
  
在C函数库中的time.h中有个clock()函数,它可以返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock)。其中clock_t是用来保存时间的数据类型。因此,我们可以按照如下方法计算程序运行时间:  
clock_t timeBegin = clock();  
/******************/  
/*   main函数的执行或某个方法的调用     */  
/******************/  
clock_t timeFinish = clock();  
std::cout<<timeFinish -timeBegin <<std::endl;  
这样就可以看到某个函数的具体执行时间了,其单位是毫秒。  
PS.java中也有类似的获取系统时间的方法。  
取得当前时间System.currentTimeMillis();在程序的开始处取一下,然后在程序退出前再取一下,两次取得的值相减就是程序运行的时间,单位是毫秒。返回类型是long  
  
源文档 <http://hi.baidu.com/buptyoyo/blog/item/62b770265b653439c89559b7.html> 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: