C语言中 如何获取系统时间
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中 如何获取系统时间相关的知识,希望对你有一定的参考价值。
参考技术A方法一,#include<time.h>
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 <stdio.h>
#include <time.h>
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=span.GetDays(); //获取这段时间间隔共有多少天
int iHour=span.GetTotalHours(); //获取总共有多少小时
int iMin=span.GetTotalMinutes();//获取总共有多少分钟
int iSec=span.GetTotalSeconds();//获取总共有多少秒
2、timeb()函数
_timeb定义在SYS\\TIMEB.H,有四个fields
dstflag
millitm
time
timezone
void _ftime( struct _timeb *timeptr );
struct _timeb timebuffer;
_ftime( &timebuffer );
参考资料来源:百度百科:time函数
在c语言中如何获取当前日期?
在mfc中由用户输入一个时间长度,然后系统自动计算出当前日期加上该时间长度的未来日期,这个要怎么实现?
#include <time.h> 要添加这个头文件。time_t rawtime;
struct tm * target_time;
time ( &rawtime ); //获取当前时间,存rawtime里
target_time = localtime ( &rawtime ); //获取当地时间
利用struct tm,你可以按需取出年月日时分秒星期几等数值。
---------------------
你的问题:
time_t now;
long int dt=3600; // 时间长度,秒数
now = time (NULL); //获取当前时间
printf("%s ",ctime(&now)); //直接打印时间
now=now+dt;
printf("%s ",ctime(&now)); // 直接打印加dt后的时间
(当然,你也可以用 ctime(&now) 返回的字符串 通过 MFC 的方法显示) 参考技术A ISO标准时间函数
time_t time(time_t * time);
char *ctime(time_t *time);
格林尼治标准时间
以上是关于C语言中 如何获取系统时间的主要内容,如果未能解决你的问题,请参考以下文章