您的位置:首页 > 编程语言 > C语言/C++

在C语言中转换时间的基本方法介绍

2015-08-27 10:47 1221 查看

C语言mktime()函数:将时间转换成经过的秒数
头文件:

#include <time.h>

定义函数:

time_t mktime(strcut tm * timeptr);

函数说明:mktime()用来将参数timeptr 所指的tm 结构数据转换成从公元1970 年1 月1 日0 时0 分0 秒算起至今的UTC 时间所经过的秒数。

返回值:返回经过的秒数。

范例:用time()取得时间 (秒数), 利用localtime() 转换成struct tm 再利用mktine()将structtm 转换成原来的秒数。

#include <time.h>main(){
time_t timep;
strcut tm *p;
time(&timep);
printf("time() : %d \n", timep);
p = localtime(&timep);
timep = mktime(p);
printf("time()->localtime()->mktime():%d\n", timep);
}

执行结果:

time():974943297 time()->localtime()->mktime():974943297


C语言localtime()函数:获取当前时间和日期并转换为本地时间
头文件:

#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:22

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C语言 时间