函数C 中于获取当前时间的函数

当前时间  时间:2021-01-31  阅读:()

asctime将时间和

日期以字符串格式

表示

相关函数time ctime gmtime localtime

表头文件#include<time.h>

定义函数char * asctime(const struct tm * timeptr) ;

函数说明asctime()将参数timeptr所指的tm结构中的信息转换成真实世界所使用的时间日期表示方法然后将结果以字符串形态返回。此函数已经由时区转换成当地时间字符串格式为: “Wed Jun 30 21:49:08 1993\n”

返回值若再调用相关的时间日期函数此字符串可能会被破坏。此函数与ctime不同处在于传入的参数是不同的结构。

附加说明返回一字符串表示目前当地的时间日期。

范例#include <time.h>main()

{time_t timep;time (&timep) ;printf( “%s” ,asctime(gmtime(&timep) )) ;

}

执行Sat Oct 28 02: 10:06 2000c t i me 将时间和日期以字符串格式表示

相关函数time asctime gmtime localtime

表头文件#include<time.h>

定义函数char *ctime(const time_t *timep) ;

函数说明ctime()将参数timep所指的time_t结构中的信息转换成真实世界所使用的时间日期表示方法然后将结果以字符串形态返回。此函数已经由时区转换成当地时间字符串格式为“Wed Jun 30 21 :49 :08 1993\n” 。若再调用相关的时间日期函数此字符串可能会被破坏。

返回值返回一字符串表示目前当地的时间日期。

范例#include<time.h>main()

{time_t timep;time (&timep) ;printf( “%s” , ctime(&timep) ) ;

}

执行Sat Oct 28 10 : 12 : 05 2000

gettimeofday 取得目前的时间

相关函数time ctime ftime settimeofday

表头文件#include <sys/time.h>

#include <unistd.h>

定义函数int gettimeofday ( struct timeval * tv , struct timezone * tz )函数说明gettimeofday()会把目前的时间有tv所指的结构返回当地时区的信息则放到tz所指的结构中。timeval结构定义为:struct timeval {long tv_sec; /*秒*/long tv_usec; /*微秒*/

} ;timezone结构定义为:struct timezone{int tz_minuteswest; /*和Greenwich时间差了多少分钟*/int tz_dsttime; /*日光节约时间的状态*/

} ;

上述两个结构都定义在/usr/include/sys/time.h。 tz_dsttime所代表的状态如下

DST_NONE /*不使用*/

DST_USA /*美国*/

DST_AUST /*澳洲*/

DST_WET /*西欧*/

DST_MET /*中欧*/

DST_EET /*东欧*/

DST_CAN /*加拿大*/

DST_GB /*大不列颠*/

DST_RUM /*罗马尼亚*/

DST_TUR /*土耳其*/

DST_AUSTALT /*澳洲1986年以后 */

返回值成功则返回0失败返回1错误代码存于errno。附加说明EFAULT指针tv和tz所指的内存空间超出存取权限。

范例#include<sys/time.h>

#include<unistd.h>main() {struct timeval tv;struct timezone tz;gettimeofday (&tv , &tz) ;printf( “tv_sec; %d\n” , tv, . tv_sec) ;printf( “tv_usec; %d\n” ,tv.tv_usec) ;printf( “tz_minuteswest; %d\n” , tz. tz_minuteswest) ;

printf( “tz_dsttime, %d\n” ,tz.tz_dsttime) ;

}

执行tv_sec: 974857339tv_usec: 136996tz_minuteswest:-540tz_dsttime:0

gmtime 取得目前时间和日期

相关函数time,asctime,ctime, localtime

表头文件#include<time.h>

定义函数struct tm*gmtime(const time_t*timep) ;

函数说明gmtime()将参数timep所指的time_t结构中的信息转换成真实世界所使用的时间日期表示方法然后将结果由结构tm返回。

结构tm的定义为struct tm

{int tm_sec;int tm_min;int tm_hour;int tm_mday;int tm_mon;int tm_year;int tm_wday;int tm_yday;int tm_isdst;

} ;int tm_sec代表目前秒数正常范围为0-59但允许至61秒int tm_min代表目前分数范围0-59int tm_hour从午夜算起的时数范围为0-23int tm_mday 目前月份的日数范围01-31int tm_mon代表目前月份从一月算起范围从0-11int tm_year从1900年算起至今的年数int tm_wday一星期的日数从星期一算起范围为0-6int tm_yday从今年1月1日算起至今的天数范围为0-365int tm_isdst 日光节约时间的旗标

此函数返回的时间日期未经时区转换而是UTC时间。

返回值返回结构tm代表目前UTC时间

范例#include <time.h>main() {c har *wday[]={"Sun", "Mo n", "Tu e", "We d", "Thu", "Fr i", "S at"} ;

time_t timep;struct tm *p;time(&timep) ;p=gmt i me(&t i mep) ;printf( “%d%d%d” , (1900+p->tm_year) , (1+p->tm_mon) ,p->tm_mday) ;printf( “%s%d;%d;%d\n” , wday[p->tm_wday] , p->tm_hour, p->tm_min,p->tm_sec) ;

}

执行2000/10/28 Sat 8: 15:38localtime 取得当地目前时间和日期

相关函数time, asctime, ctime, gmtime

表头文件#include<time.h>

定义函数struct tm *localtime(const time_t * timep) ;

函数说明localtime()将参数timep所指的time_t结构中的信息转换成真实世界所使用的时间日期表示方法然后将结果由结构tm返回。结构tm的定义请参考gmtime() 。此函数返回的时间日期已经转换成当地时区。

返回值返回结构tm代表目前的当地时间。

范例#include<time.h>main() {char

*wday[]={ “Sun” , ” Mon” , ” Tue” , ” Wed” , ” Thu” , ” Fri” , ” Sat” } ;time_t timep;struct tm *p;time(&timep) ;p=localtime(&timep) ; /*取得当地时间*/printf ( “%d%d%d ” , (1900+p->tm_year) , ( l+p->tm_mon) , p->tm_mday) ;printf( “%s%d:%d:%d\n” , wday[p->tm_wday] ,p->tm_hour, p->tm_min,p->tm_sec) ;

}

执行2000/10/28 Sat 11 : 12:22mktime 将时间结构数据转换成经过的秒数

相关函数time asctime gmtime localtime

表头文件#include<time.h>

定义函数time_t mktime(strcut tm * timeptr) ;

函数说明mktime()用来将参数timeptr所指的tm结构数据转换成从公元1970年1月

1日0时0分0秒算起至今的UTC时间所经过的秒数。

返回值返回经过的秒数。

范例/*用time()取得时间秒数 利用localtime()

转换成struct tm再利用mktine  将struct tm转换成原来的秒数*/#include<time.h>main()

{time_t timep;strcut tm *p;time(&timep) ;printf( “time() : %d \n” , timep) ;p=localtime(&timep) ;t imep = mkt ime(p) ;printf( “time()->localtime()->mktime() :%d\n” ,timep) ;

}

执行time() :974943297time()->localtime()->mktime() :974943297settimeofday 设置目前时间

相关函数time ctime ftime gettimeofday

表头文件#include<sys/time.h>

#include<unistd.h>

定义函数int settimeofday ( const struct timeval *tv, const struct timezone

*tz) ;

函数说明settimeofday()会把目前时间设成由tv所指的结构信息当地时区信息则设成tz所指的结构。详细的说明请参考gettimeofday() 。注意只有root权限才能使用此函数修改时间。

返回值成功则返回0失败返回1错误代码存于errno。

错误代码EPERM并非由root权限调用settimeofday   权限不够。

EINVAL时区或某个数据是不正确的无法正确设置时间。time 取得目前的时间

相关函数ctime ftime gettimeofday

表头文件#include<time.h>

定义函数time_t time(time_t *t) ;

函数说明此函数会返回从公元1970年1月1日的UTC时间从0时0分0秒算起到现在所经过的秒数。如果t并非空指针的话此函数也会将返回值存到t指针所

指的内存。

返回值成功则返回秒数失败则返回( (time_t)-1)值错误原因存于errno中。范例#include<time.h>mian()

{int seconds= time( (time_t*)NULL) ;printf( “%d\n” , seconds) ;

}

执行9. 73E+08

PhotonVPS:$4/月,KVM-2GB/30GB/2TB/洛杉矶&达拉斯&芝加哥等

很久没有分享PhotonVPS的消息,最近看到商家VPS主机套餐有一些更新所以分享下。这是一家成立于2008年的国外VPS服务商,Psychz机房旗下的站点,主要提供VPS和独立服务器等,数据中心包括美国洛杉矶、达拉斯、芝加哥、阿什本等。目前,商家针对Cloud VPS提供8折优惠码,优惠后最低2G内存套餐每月4美元起。下面列出几款主机配置信息。CPU:1core内存:2GB硬盘:30GB NVm...

月神科技-美国CERA 5折半价倒计时,上新华中100G高防云59起!

官方网站:点击访问月神科技官网优惠码:美国优惠方案:CPU:E5-2696V2,机房:国人热衷的优质 CeraNetworks机房,优惠码:3wuZD43F 【过期时间:5.31,季付年付均可用】活动方案:1、美国机房:洛杉矶CN2-GIA,100%高性能核心:2核CPU内存:2GB硬盘:50GB流量:Unmilited端口:10Mbps架构:KVM折后价:15元/月、150元/年传送:购买链接洛...

器安装环境和运维管理工具推荐

今天看到一个网友从原来虚拟主机准备转移至服务器管理自己的业务。这里问到虚拟主机和服务器到底有什么不同,需要用到哪些工具软件。那准备在下班之间稍微摸鱼一下整理我们服务器安装环境和运维管理中常见需要用到的软件工具推荐。第一、系统镜像软件一般来说,我们云服务器或者独立服务器都是有自带镜像的。我们只需要选择镜像安装就可以,比如有 Windows和Linux。但是有些时候我们可能需要自定义镜像的高级玩法,这...

当前时间为你推荐
软银孙正义日本的孙正义是阿里的最大股东,马云没有孙正义的股份多,为什么马云是亚洲首富而不是孙正义?百度空间首页怎样登录百度博客百度空间首页怎样通过账号登录自己的百度空间腾讯空间首页腾讯空间主页哪去了电脑杀毒软件哪个好现在电脑用哪个杀毒软件最好石英表和机械表哪个好石英表好还是机械表好?宝来和朗逸哪个好新宝来和新朗逸选哪个?好纠结!!宝来和朗逸哪个好宝来和朗逸哪个好手机炒股软件哪个好免费手机炒股软件哪个好?雅思和托福哪个好考托福、雅思哪个好考?
com域名 vps教程 亚洲大于500m 仿牌空间 panel1 好看qq空间 亚马逊香港官网 网络空间租赁 百度云加速 帽子云排名 论坛主机 中国linux 网页加速 万网注册 架设代理服务器 cloudflare 香港打折信息 游戏服务器 let 网络安装 更多