函数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

6元虚拟主机是否值得购买

6元虚拟主机是否值得购买?近期各商家都纷纷推出了优质便宜的虚拟主机产品,其中不少6元的虚拟主机,这种主机是否值得购买,下面我们一起来看看。1、百度云6元体验三个月(活动时间有限抓紧体验)体验地址:https://cloud.baidu.com/campaign/experience/index.html?from=bchPromotion20182、Ucloud 10元云主机体验地址:https:...

HostMem,最新优惠促销,全场75折优惠,大硬盘VPS特价优惠,美国洛杉矶QuadraNet机房,KVM虚拟架构,KVM虚拟架构,2核2G内存240GB SSD,100Mbps带宽,27美元/年

HostMem近日发布了最新的优惠消息,全场云服务器产品一律75折优惠,美国洛杉矶QuadraNet机房,基于KVM虚拟架构,2核心2G内存240G SSD固态硬盘100Mbps带宽4TB流量,27美元/年,线路方面电信CN2 GT,联通CU移动CM,有需要美国大硬盘VPS云服务器的朋友可以关注一下。HostMem怎么样?HostMem服务器好不好?HostMem值不值得购买?HostMem是一家...

gcorelabs远东khabarovsk伯力Cloud云服务器测评,告诉你gcorelabs云服务器怎么样

说明一下:gcorelabs的俄罗斯远东机房“伯力”既有“Virtual servers”也有“CLOUD SERVICES”,前者是VPS,后者是云服务器,不是一回事;由于平日大家习惯把VPS和云服务器当做一回事儿,所以这里要特别说明一下。本次测评的是gcorelabs的cloud,也就是云服务器。 官方网站:https://gcorelabs.com 支持:数字加密货币、信用卡、PayPal...

当前时间为你推荐
软银收购arm就只买苹果手机是崇洋媚外吗集成显卡和独立显卡哪个好集成显卡和独立显卡那个好?录音软件哪个好手机录音软件哪个好用英语词典哪个好哪个英语词典好核芯显卡与独立显卡哪个好核芯显卡与独立显卡哪个好牡丹江教育云空间登录云端学习如何登录?网通dns服务器地址湖北省鄂州市葛店镇DNS服务器IP地址是多少360云查杀360出了个云查杀?啥叫云啊360云盘企业版360云盘企业版网页打开的 怎么不能编辑?强生美瞳月抛强生隐形眼镜月抛有哪些,价格是多少?哪个较好?
域名服务器 传奇服务器租用 a5域名交易 softbank官网 空间打开慢 lighttpd 天猫双十一抢红包 免费博客空间 福建天翼加速 qingyun 炎黄盛世 世界测速 tna官网 免费美国空间 33456 卡巴斯基免费试用版 申请网站 万网空间管理 starry 免费个人主页 更多