C中的time()函数怎么用?

什么是time()函数?

在C语言中,time()是一个非常常用的函数,在很多情况下,需要获取系统时间。time()函数可以获取当前系统时间并返回一个time_t类型的值。time_t类型变量是一个结构体类型变量,表示的是从1970年1月1日00时00分00秒起到当前系统时间所经过的秒数。

在使用time()函数前,需要include头文件

time()的用法

1. 获取当前系统时间

可以使用time()函数来获取当前系统的时间,并将获取到的时间戳(当前时间距离1970-01-01 00:00:00的秒数)存储在一个time_t类型的变量中。

#include<stdio.h>

#include<time.h>

int main()

{

time_t seconds;

seconds = time(NULL);

printf("当前时间: %ld\n", seconds);

return 0;

}

其中,time(NULL)返回当前时间距离1970年1月1日00时00分00秒的秒数,也称为当前系统时间的时间戳。

执行结果如下:

当前时间: 1578814414

2. 获取本地时间

我们还可以将time_t类型的时间戳转化为本地时间的格式,可以借助localtime()函数将time_t类型的时间转换为struct tm类型的本地时间结构体。

#include<stdio.h>

#include<time.h>

int main()

{

time_t rawtime;

struct tm *info;

time(&rawtime);

info = localtime(&rawtime);

printf("当前本地时间为: %s", asctime(info));

return 0;

}

输出结果如下:

当前本地时间为: Mon Jan 12 19:07:35 2020

3. 时间格式化

strftime()函数可以将本地时间格式化输出。它可以将struct tm格式的时间按照指定的格式输出到一个数组中。

#include<stdio.h>

#include<time.h>

int main()

{

time_t raw_time;

struct tm *info;

char buffer[80];

time(&raw_time);

info = localtime(&raw_time);

strftime(buffer, 80, "%Y-%m-%d %I:%M:%S", info);

printf("%s", buffer);

return 0;

}

输出结果如下:

2020-01-12 07:27:14

其中,strftime()函数的第一个参数是目标输出数组,第二个参数是目标输出数组的大小,第三个参数是指定输出格式的字符串,第四个参数是struct tm类型的源时间结构体。

小结

总的来说,time()函数是一个非常有用的函数,在很多情况下需要获取系统时间。通过本文介绍,读者可以学会time()函数的基本用法,包括获取当前系统时间、获取本地时间以及时间格式化。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

后端开发标签