
使用MFC的CTime类来得到时间:
CTime必须调用赋值函数,使用其静态函数来初始化 例如:
CTime time=CTime::GetCurrentTime();
这样就可以直接调用time的内部方法得到你想要的当前的时间了。
方法一,#include<timeh>
int main()
{
time_t timep;
struct tm p;
time (&timep);
p=gmtime(&timep);
printf("%d\n",p->tm_sec); /获取当前秒/
printf("%d\n",p->tm_min); /获取当前分/
printf("%d\n",8+p->tm_hour);/获取当前时,这里获取西方的时间,刚好相差八个小时/
printf("%d\n",p->tm_mday);/获取当前月份日数,范围是1-31/
printf("%d\n",1+p->tm_mon);/获取当前月份,范围是0-11,所以要加1/
printf("%d\n",1900+p->tm_year);/获取当前年份,从1900开始,所以要加1900/
printf("%d\n",p->tm_yday); /从今年1月1日算起至今的天数,范围为0-365/
}
方法二#include <stdioh>
#include <timeh>
int main ()
{
time_t t
struct tm lt; time (&t);//获取Unix时间戳。
lt = localtime (&t);//转为时间结构。
printf ( "%d/%d/%d %d:%d:%d\n",lt->tm_year+1900, lt->tm_mon, lt->tm_mday,
lt->tm_hour, lt->tm_min, lt->tm_sec);//输出结果
return 0;}
扩展资料
1、CTimeSpan类
如果想计算两段时间的差值,可以使用CTimeSpan类,具体使用方法如下:
CTime t1( 1999, 3, 19, 22, 15, 0 );
CTime t = CTime::GetCurrentTime();
CTimeSpan span=t-t1; //计算当前系统时间与时间t1的间隔
int iDay=spanGetDays(); //获取这段时间间隔共有多少天
int iHour=spanGetTotalHours(); //获取总共有多少小时
int iMin=spanGetTotalMinutes();//获取总共有多少分钟
int iSec=spanGetTotalSeconds();//获取总共有多少秒
2、timeb()函数
_timeb定义在SYS\TIMEBH,有四个fields
dstflag
millitm
time
timezone
void _ftime( struct _timeb timeptr );
struct _timeb timebuffer;
_ftime( &timebuffer );
参考资料来源:百度百科:time函数
1用SetTimer( )设置一个定时器, 间隔为1000毫秒
2在OnTimer中:
CTime t=CTime::GetCurrent();
CString str;
strFormat(_T("%d年%月%日-%d时:%d分:%秒",tGetYear(),tGetMonth(),tGetDay(),tGetMinite(),tGetSecond());
SetDlgItemText(IDC_EDIT1,str);
昨天:
CTime m_Date = CTime::GetCurrentTime() - CTimeSpan( 1, 0, 0, 0 );
明天
CTime m_Date = CTime::GetCurrentTime() + CTimeSpan( 1, 0, 0, 0 );
CTimeSpan的第一个参数换成其他数值就可以计算若干天之前或之后的日期了。
用CDateTimeCtrl::GetTime成员函数来获取时间,共有以下三种形式:
BOOL GetTime(
COleDateTime& timeDest
) const;
DWORD GetTime(
CTime& timeDest
) const;
DWORD GetTime(
LPSYSTEMTIME pTimeDest
) const;
我一般用第2种,因为CTime可以与标准库中的时间函数互相传递数据,还可以调用CTime的成员函数Format转为你想要的时间格式表示的字符串。
在VC中,我们可以借助CTime时间类,获取系统当前日期
1获取系统当前日期
CTime t = CTime::GetCurrentTime(); //获取系统日期
//创建CTime类变量t,并将调用函数GetCurrentTime()的返回值赋给变量t
2获得当前日期和时间,并可以转化为 CString
CTime tm=CTime::GetCurrentTime(); CString str=tmFormat("%Y-%m-%d");//显示年月日
或者:CTime tm=CTime::GetCurrentTime()Format("%Y-%m-%d");//显示年月日
用cdatetimectrl::gettime成员函数来获取时间,共有以下三种形式:
bool
gettime(
coledatetime&
timedest
)
const;
dword
gettime(
ctime&
timedest
)
const;
dword
gettime(
lpsystemtime
ptimedest
)
const;
我一般用第2种,因为ctime可以与标准库中的时间函数互相传递数据,还可以调用ctime的成员函数format转为你想要的时间格式表示的字符串。
以上就是关于MFC怎么设置系统时间全部的内容,包括:MFC怎么设置系统时间、用c语言如何获取系统当前时间的函数、mfc 的编辑框中怎么显示系统的当前时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)