C语言中系统时间函数是怎么用的?

C语言中系统时间函数是怎么用的?


一只名叫tom的猫
浏览 1248回答 2
2回答

慕莱坞森

1、C语言中读取系统时间的函数为time(),其函数原型为:#include <time.h>time_t time( time_t * ) ;time_t就是long,函数返回从1970年1月1日(MFC是1899年12月31日)0时0分0秒,到现在的的秒数。2、C语言还提供了将秒数转换成相应的时间格式的函数:char * ctime(const time_t *timer); //将日历时间转换成本地时间,返回转换后的字符串指针 可定义字符串或是字符指针来接收返回值struct tm * gmtime(const time_t *timer); //将日历时间转化为世界标准时间(即格林尼治时间),返回结构体指针 可定义struct tm *变量来接收结果struct tm * localtime(const time_t * timer); //将日历时间转化为本地时间,返回结构体指针 可定义struct tm *变量来接收结果3、例程:12345678910111213141516171819202122#include&nbsp;<time.h>void&nbsp;main(){time_t&nbsp;t;struct&nbsp;tm&nbsp;*pt&nbsp;;char&nbsp;*pc&nbsp;;time(&t);pc=ctime(&t)&nbsp;;&nbsp;printf("ctime:%s",&nbsp;pc&nbsp;);pt=localtime(&t)&nbsp;;&nbsp;printf("year=%d",&nbsp;pt->tm_year+1900&nbsp;);}//时间结构体struct&nbsp;tm&nbsp;说明:struct&nbsp;tm&nbsp;{int&nbsp;tm_sec;&nbsp;/*&nbsp;秒&nbsp;–&nbsp;取值区间为[0,59]&nbsp;*/int&nbsp;tm_min;&nbsp;/*&nbsp;分&nbsp;-&nbsp;取值区间为[0,59]&nbsp;*/int&nbsp;tm_hour;&nbsp;/*&nbsp;时&nbsp;-&nbsp;取值区间为[0,23]&nbsp;*/int&nbsp;tm_mday;&nbsp;/*&nbsp;一个月中的日期&nbsp;-&nbsp;取值区间为[1,31]&nbsp;*/int&nbsp;tm_mon;&nbsp;/*&nbsp;月份(从一月开始,0代表一月)&nbsp;-&nbsp;取值区间为[0,11]&nbsp;*/int&nbsp;tm_year;&nbsp;/*&nbsp;年份,其值等于实际年份减去1900&nbsp;*/int&nbsp;tm_wday;&nbsp;/*&nbsp;星期&nbsp;–&nbsp;取值区间为[0,6],其中0代表星期天,1代表星期一,以此类推&nbsp;*/int&nbsp;tm_yday;&nbsp;/*&nbsp;从每年的1月1日开始的天数&nbsp;–&nbsp;取值区间为[0,365],其中0代表1月1日,1代表1月2日,以此类推&nbsp;*/int&nbsp;tm_isdst;&nbsp;/*&nbsp;夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的进候,tm_isdst为0;不了解情况时,tm_isdst()为负。*/};

青春有我

在C语言中,用SYSTEMTIME数据结构,通过GetSystemTime()函数来得到系统时间。#include "WTYPES.H"SYSTEMTIME time;GetSystemTime(&time);cout << time.wYear<<"-" <<time.wMonth<<"-"time.wDay;如果是C++中,更简单,用CTime类,很容易操作:CTime mTime;CString str;mTime=CTime::GetCurrentTime();str = mTime.Format("%Y-%m-%d");
打开App,查看更多内容
随时随地看视频慕课网APP