<time.h> 是 C 语言标准库中的头文件,提供了处理日期和时间的函数和类型。这些函数允许你获取当前时间、进行时间运算、格式化时间等操作。

以下是 <time.h> 中一些常见的函数和类型:

1. 时间类型:
   - time_t:是一个整数类型,通常用于表示从某个特定时间点开始的秒数。time_t 类型的变量通常用于存储时间戳。

2. 获取当前时间:
   - time_t time(time_t *timer):获取当前的系统时间,返回一个 time_t 类型的值。如果 timer 不为 NULL,则也将当前时间存储在 timer 指向的变量中。

3. 时间转换:
   - struct tm *localtime(const time_t *timer):将 time_t 类型的时间转换为本地时间(struct tm 结构)。
   - struct tm *gmtime(const time_t *timer):将 time_t 类型的时间转换为协调世界时(UTC)时间(struct tm 结构)。
   - time_t mktime(struct tm *timeptr):将 struct tm 结构的时间转换为 time_t 类型的时间。

4. 格式化时间:
   - size_t strftime(char *s, size_t maxsize, const char *format, const struct tm *timeptr):将 struct tm 结构中的时间格式化为字符串,存储在 s 中,最大长度为 maxsize。

以下是一个简单的例子,演示了 <time.h> 中的一些基本用法:
#include <stdio.h>
#include <time.h>

int main() {
    // 获取当前时间
    time_t current_time;
    time(&current_time);
    printf("Current time: %ld\n", current_time);

    // 将时间转换为本地时间和 UTC 时间
    struct tm *local_time_info = localtime(&current_time);
    struct tm *utc_time_info = gmtime(&current_time);

    // 格式化时间输出
    char time_buffer[80];
    strftime(time_buffer, sizeof(time_buffer), "%Y-%m-%d %H:%M:%S", local_time_info);
    printf("Local Time: %s\n", time_buffer);

    strftime(time_buffer, sizeof(time_buffer), "%Y-%m-%d %H:%M:%S", utc_time_info);
    printf("UTC Time: %s\n", time_buffer);

    return 0;
}

在这个例子中,我们使用了 <time.h> 中的函数来获取当前时间、进行时间转换,以及格式化输出本地时间和 UTC 时间。struct tm 结构提供了一个便捷的方式来表示年、月、日、时、分、秒等时间信息。


转载请注明出处:http://www.zyzy.cn/article/detail/3213/C语言