前言:
今天我们对“c语言显示系统时间”大概比较关怀,同学们都需要了解一些“c语言显示系统时间”的相关资讯。那么小编同时在网络上搜集了一些关于“c语言显示系统时间””的相关文章,希望姐妹们能喜欢,咱们一起来学习一下吧!总体概述:
在linux系统环境下,编写C语言程序,调用C库函数,获取本地时间并打印在终端上。需要用到的函数有 time, localtime_r这几个函数。
函数原型:
time函数原型1:time_t time(time_t *tloc);
localtime_r函数原型2:struct tm *localtime_r(const time_t *timep, struct tm *result);
函数作用:
time函数的作用:返回从Epoch开始的秒数(即日历时间),1970-01-01 00:00:00 +0000 (UTC)。
localtime_r函数的作用:将日历时间转换为相对于用户指定的时区表示的分解时间表示形式。
参数介绍:
time参数介绍:
输出参数:tloc => 传入需要存储日历时间的变量地址,如果传入 NULL,日历时间从返回值获取。返回值:成功:返回日历时间值;失败:返回 -1。
localtime_r参数介绍:
输入参数:timep => 传入存有日历时间值的变量地址。输出参数:result => 传入需要存储本地时间的变量地址。返回值:成功:返回struct tm *结构地址;失败:返回 NULL。
补充:struct tm 结构体原型:struct tm { int tm_sec; /* Seconds (0-60) */ int tm_min; /* Minutes (0-59) */ int tm_hour; /* Hours (0-23) */ int tm_mday; /* Day of the month (1-31) */ int tm_mon; /* Month (0-11) */ int tm_year; /* Year - 1900 */ int tm_wday; /* Day of the week (0-6, Sunday = 0) */ int tm_yday; /* Day in the year (0-365, 1 Jan = 0) */ int tm_isdst; /* Daylight saving time */};
代码示例:
#include <stdio.h>#include <time.h>int main(int argc, char **argv){ struct tm tm; time_t tloc = time(NULL); localtime_r(&tloc, &tm); printf("%04d-%02d-%02d %02d:%02d:%02d\n", \ tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, \ tm.tm_hour, tm.tm_min, tm.tm_sec); return 0;}
使用方法:
$ mkdir ~/clanguage && cd ~/clanguage$ touch localtime.c 注:创建并拷贝代码到localtime.c,保存退出。$ gcc -o localtime localtime.c$ ./localtime
运行效果:
注:由于作者能力有限,文中表述难免有错误。如果发现文中错误之处,敬请广大好友批评指正。
标签: #c语言显示系统时间