c语言time函数怎么用

Python016

c语言time函数怎么用,第1张

#include <stdio.h>

#include <time.h>

int main()

{

time_t t1,t2//分别声明两种使用方式的赋值对象

t1=time(0) //第一种使用方式

time(&t2) //第二种使用方式

printf("t1=%ld\n",t1)

printf("t2=%ld",t2)

return 0

}

头文件time.h \x0d\x0a\x0d\x0a@函数名称: localtime \x0d\x0a函数原型: struct tm *localtime(const time_t *timer) \x0d\x0a函数功能: 返回一个以tm结构表达的机器时间信息 \x0d\x0a函数返回: 以tm结构表达的时间,结构tm定义如下: \x0d\x0astruct tm{ \x0d\x0a int tm_sec\x0d\x0a int tm_min\x0d\x0a int tm_hour\x0d\x0a int tm_mday\x0d\x0a int tm_mon\x0d\x0a int tm_year\x0d\x0a int tm_wday\x0d\x0a int tm_yday\x0d\x0a int tm_isdst\x0d\x0a}\x0d\x0a参数说明: timer-使用time()函数获得的机器时间 \x0d\x0a\x0d\x0a#include \x0d\x0a#include \x0d\x0a#include \x0d\x0aint main() \x0d\x0a{ \x0d\x0atime_t timer\x0d\x0astruct tm *tblock\x0d\x0atimer=time(NULL)\x0d\x0atblock=localtime(&timer)\x0d\x0aprintf("Local time is: %s",asctime(tblock))\x0d\x0areturn 0\x0d\x0a} \x0d\x0a\x0d\x0a@函数名称: asctime \x0d\x0a函数原型: char* asctime(struct tm * ptr) \x0d\x0a函数功能: 得到机器时间(日期时间转换为ASCII码) \x0d\x0a函数返回: 返回的时间字符串格式为:星期,月,日,小时:分:秒,年 \x0d\x0a参数说明: 结构指针ptr应通过函数localtime()和gmtime()得到 \x0d\x0a所属文件: \x0d\x0a\x0d\x0a#include \x0d\x0a#include \x0d\x0a#include \x0d\x0aint main() \x0d\x0a{ \x0d\x0astruct tm t\x0d\x0achar str[80]\x0d\x0at.tm_sec=1\x0d\x0at.tm_min=3\x0d\x0at.tm_hour=7\x0d\x0at.tm_mday=22\x0d\x0at.tm_mon=11\x0d\x0at.tm_year=56\x0d\x0at.tm_wday=4\x0d\x0at.tm_yday=0\x0d\x0at.tm_isdst=0\x0d\x0astrcpy(str,asctime(&t))\x0d\x0aprintf("%s",str)\x0d\x0areturn 0\x0d\x0a} \x0d\x0a\x0d\x0a@函数名称: ctime \x0d\x0a函数原型: char *ctime(long time) \x0d\x0a函数功能: 得到日历时间 \x0d\x0a函数返回: 返回字符串格式:星期,月,日,小时:分:秒,年 \x0d\x0a参数说明: time-该参数应由函数time获得 \x0d\x0a所属文件: \x0d\x0a\x0d\x0a#include \x0d\x0a#include \x0d\x0aint main() \x0d\x0a{ \x0d\x0atime_t t\x0d\x0atime(&t)\x0d\x0aprintf("Today's date and time: %s",ctime(&t))\x0d\x0areturn 0\x0d\x0a} \x0d\x0a\x0d\x0a@函数名称: difftime \x0d\x0a函数原型: double difftime(time_t time2, time_t time1) \x0d\x0a函数功能: 得到两次机器时间差,单位为秒 \x0d\x0a函数返回: 时间差,单位为秒 \x0d\x0a参数说明: time1-机器时间一,time2-机器时间二.该参数应使用time函数获得 \x0d\x0a所属文件: \x0d\x0a\x0d\x0a#include \x0d\x0a#include \x0d\x0a#include \x0d\x0a#include \x0d\x0aint main() \x0d\x0a{ \x0d\x0atime_t first, second\x0d\x0aclrscr()\x0d\x0afirst=time(NULL)\x0d\x0adelay(2000)\x0d\x0asecond=time(NULL)\x0d\x0aprintf("The difference is: %f seconds",difftime(second,first))\x0d\x0agetch()\x0d\x0areturn 0\x0d\x0a} \x0d\x0a\x0d\x0a@函数名称: gmtime \x0d\x0a函数原型: struct tm *gmtime(time_t *time) \x0d\x0a函数功能: 得到以结构tm表示的时间信息 \x0d\x0a函数返回: 以结构tm表示的时间信息指针 \x0d\x0a参数说明: time-用函数time()得到的时间信息 \x0d\x0a所属文件: \x0d\x0a\x0d\x0a#include \x0d\x0a#include \x0d\x0a#include \x0d\x0a#include \x0d\x0achar *tzstr="TZ=PST8PDT"\x0d\x0aint main() \x0d\x0a{ \x0d\x0atime_t t\x0d\x0astruct tm *gmt, *area\x0d\x0aputenv(tzstr)\x0d\x0atzset()\x0d\x0at=time(NULL)\x0d\x0aarea=localtime(&t)\x0d\x0aprintf("Local time is:%s", asctime(area))\x0d\x0agmt=gmtime(&t)\x0d\x0aprintf("GMT is:%s", asctime(gmt))\x0d\x0areturn 0\x0d\x0a} \x0d\x0a\x0d\x0a@函数名称: time \x0d\x0a函数原型: time_t time(time_t *timer) \x0d\x0a函数功能: 得到机器的日历时间或者设置日历时间 \x0d\x0a函数返回: 机器日历时间 \x0d\x0a参数说明: timer=NULL时得到机器日历时间,timer=时间数值时,用于设置日历时间,time_t是一个long类型 \x0d\x0a所属文件: \x0d\x0a\x0d\x0a#include \x0d\x0a#include \x0d\x0a#include \x0d\x0aint main() \x0d\x0a{ \x0d\x0atime_t t\x0d\x0at=time()\x0d\x0aprintf("The number of seconds since January 1,1970 is %ld",t)\x0d\x0areturn 0\x0d\x0a} \x0d\x0a\x0d\x0a@函数名称: tzset \x0d\x0a函数原型: void tzset(void) \x0d\x0a函数功能: UNIX兼容函数,用于得到时区,在DOS环境下无用途 \x0d\x0a函数返回: \x0d\x0a参数说明: \x0d\x0a所属文件: \x0d\x0a\x0d\x0a#include \x0d\x0a#include \x0d\x0a#include \x0d\x0aint main() \x0d\x0a{ \x0d\x0atime_t td\x0d\x0aputenv("TZ=PST8PDT")\x0d\x0atzset()\x0d\x0atime(&td)\x0d\x0aprintf("Current time=%s",asctime(localtime(&td)))\x0d\x0areturn 0\x0d\x0a}

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、例程:

#include <time.h>

void main()

{

time_t t

struct tm *pt 

char *pc 

time(&t)

pc=ctime(&t)  printf("ctime:%s", pc )

pt=localtime(&t)  printf("year=%d", pt->tm_year+1900 )

}

//时间结构体struct tm 说明:

struct tm {

int tm_sec /* 秒 – 取值区间为[0,59] */

int tm_min /* 分 - 取值区间为[0,59] */

int tm_hour /* 时 - 取值区间为[0,23] */

int tm_mday /* 一个月中的日期 - 取值区间为[1,31] */

int tm_mon /* 月份(从一月开始,0代表一月) - 取值区间为[0,11] */

int tm_year /* 年份,其值等于实际年份减去1900 */

int tm_wday /* 星期 – 取值区间为[0,6],其中0代表星期天,1代表星期一,以此类推 */

int tm_yday /* 从每年的1月1日开始的天数 – 取值区间为[0,365],其中0代表1月1日,1代表1月2日,以此类推 */

int tm_isdst /* 夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的进候,tm_isdst为0;不了解情况时,tm_isdst()为负。*/

}