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

RAKsmart 年中活动 独立服务器限时$30秒杀 VPS主机低至$1.99

RAKsmart 虽然是美国主机商,但是商家的主要客户群还是在我们国内,于是我们可以看到每次的国内节日促销活动期间商家也会发布促销。包括这次年中大促活动,RAKsmart商家也有发布为期两个月的年终活动,其中有商家擅长的独立服务器和便宜VPS主机。服务器包括站群服务器、特价服务器、高达10G带宽不限制流量的美国服务器。商家优惠活动,可以看到对应商品的优惠,同时也可以使用 优惠码 RAKBL9 同时...

RAKsmart 黑色星期五云服务器七折优惠 站群服务器首月半价

一年一度的黑色星期五和网络星期一活动陆续到来,看到各大服务商都有发布促销活动。同时RAKsmart商家我们也是比较熟悉的,这次是继双十一活动之后的促销活动。在活动产品中基本上沿袭双11的活动策略,比如有提供云服务器七折优惠,站群服务器首月半价、还有新人赠送红包等活动。如果我们有需要RAKsmart商家VPS、云服务器、独立服务器等产品的可以看看他们家的活动。这次活动截止到11月30日。第一、限时限...

CloudCone(12.95美元/月CN2 GT线路,KVM架构1 Gbps带宽

整理一下CloudCone商家之前推送的闪购VPS云服务器产品,数量有限,活动推出可能很快机器就售罄了,有需要美国便宜VPS云服务器的朋友可以关注一下。CloudCone怎么样?CloudCone服务器好不好?CloudCone值不值得购买?CloudCone是一家成立于2017年的美国服务器提供商,国外实力大厂,自己开发的主机系统面板,CloudCone主要销售美国洛杉矶云服务器产品,优势特点是...

当前时间为你推荐
桌面背景图片大全谁能给我个 游戏桌面图标大全可爱桌面背景图片卡通壁纸谁有美团月付怎么关闭美团网付款后怎么取消订单申请退款二手车网站哪个好卖二手车网站哪个好英语词典哪个好英语词典哪种更好啊?网络机顶盒哪个好现在网络机顶盒哪个牌子好?百度空间登录百度空间登陆考生个人空间登录第一次登陆湖南省高等教育自学考试 考生个人空间就密码不对为什么电信10000宽带测速怎样测试电信宽带的网速? 771212dns服务器故障DNS服务异常是什么意思
免费域名空间 mysql虚拟主机 山东vps 漂亮qq空间 樊云 fastdomain 国外空间 魔兽世界台湾服务器 京东商城0元抢购 谁的qq空间最好看 已备案删除域名 免费测手机号 国外视频网站有哪些 双线机房 东莞idc 免费的域名 石家庄服务器托管 德隆中文网 免费asp空间申请 万网注册 更多