C++ MFC CTime

C++ MFC CTime,第1张

你明天运行就和今天的不一样了啊。

你这个time1当然就是今天啊(今天的年,今天的月,今天的日),又没有加入时分秒,一直就是00:00:00啊。。。。

不知道你要问的是什么问题,你这么写time1变化才见鬼呢。

处理之前先UpdateData(FALSE);

最后再加上一个UpdateData(TRUE);

???????????????

C语言中读取系统时间函数为time(),其函数原型为:

#include <timeh>

time_t time( time_t ) ;

time_t就是long,函数返回从1970年1月1日(MFC是1899年12月31日)0时0分0秒,到现在的的秒数。可以调用ctime()函数进行时间转换输出:

char ctime(const time_t timer);

将日历时间转换成本地时间,按年月日格式,进行输出,如:

Wed Sep 23 08:43:03 2015

C语言还提供了将秒数转换成相应的时间结构的函数:

struct tm gmtime(const time_t timer); //将日历时间转化为世界标准时间(即格林尼治时间)

struct tm localtime(const time_t timer); //将日历时间转化为本地时间

将通过time()函数返回的值,转换成时间结构struct tm :

struct tm {

int tm_sec; / 秒 – 取值区间为[0,59] /

int tm_min; / 分 - 取值区间为[0,59] /

int tm_hour; / 时 - 取值区间为[0,23] /

int tm_mday; / 一个月中的日期 - 取值区间为[1,31] /

int tm_mon; / 月份(从一月开始,0代表一月) - 取值区间为[0,11] /

int tm_year; / 年份,其值等于实际年份减去1900 /

int tm_wday; / 星期 – 取值区间为[0,6],其中0代表星期天,1代表星期一,以此类推 /

int tm_yday; / 从每年的1月1日开始的天数 – 取值区间为[0,365],其中0代表1月1日,1代表1月2日,以此类推 /

int tm_isdst; / 夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的进候,tm_isdst为0;不了解情况时,tm_isdst()为负。/

};

编程者可以根据程序功能的情况,灵活的进行日期的读取与输出了。

例如:

#include<timeh>

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/

}

以上就是关于C++ MFC CTime全部的内容,包括:C++ MFC CTime、如何让c语言自动读取电脑上的日期及时间、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9325498.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存