c语言time.h函数

目录

time.h 函数详解

time_t 类型

示例

locatime函数

gmtime函数

输出格式

注意事项


time.h 函数详解

time.h 头文件包含用于获取和操作时间的函数和宏。以下是 time.h 头文件中的主要函数:

  • time():获取当前时间,并将其表示为自纪元(1970 年 1 月 1 日午夜 UTC)以来经过的秒数。
  • localtime():将 time() 函数返回的时间转换为本地时间。
  • gmtime():将 time() 函数返回的时间转换为格林威治标准时间。
  • ctime():将 time() 函数返回的时间转换为一个可读的字符串。
  • asctime():将 tm 结构体转换为一个可读的字符串。
  • mktime():将 tm 结构体转换为自纪元以来经过的秒数。
  • strftime():将 tm 结构体格式化为一个字符串。
  • strptime():将一个字符串解析为 tm 结构体。

time_t 类型

time_t 类型是一个有符号整数类型,表示自纪元(1970 年 1 月 1 日午夜 UTC)以来经过的秒数。time() 函数返回一个 time_t 值,表示当前时间。

tm 结构体

tm 结构体表示一个日历时间。它包含以下成员:

  • tm_sec:秒(0-59)
  • tm_min:分钟(0-59)
  • tm_hour:小时(0-23)
  • tm_mday:一个月中的第几天(1-31)
  • tm_mon:月份(0-11)
  • tm_year:年份(自 1900 年起)
  • tm_wday:一周中的第几天(0-6,其中 0 表示星期日)
  • tm_yday:一年中的第几天(0-365)
  • tm_isdst:夏令时标志(非零表示启用夏令时)

示例

locatime函数

以下示例展示了如何使用 time.h 函数获取和格式化当前时间:

#include <stdio.h>
#include <time.h>

int main() {
    time_t t = time(NULL);
    struct tm *tm = localtime(&t);

    printf("当前时间:%s", asctime(tm));

    return 0;
}

在上面的示例中,我们使用 time() 函数获取当前时间,并将其存储在 time_t 变量 t 中。然后,我们使用 localtime() 函数将 t 转换为本地时间,并将其存储在 tm 结构体中。最后,我们使用 asctime() 函数将 tm 结构体格式化为一个可读的字符串,并打印它。

gmtime函数
#include <stdio.h>
#include <time.h>

int main() {
    time_t t = time(NULL);
    struct tm *tm = gmtime(&t);

    printf("当前时间:%s", asctime(tm));

    return 0;
}

输出格式
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <sys/time.h>

int main() {
   
    time_t timestamp;
    struct tm *tm;
    timestamp = time(NULL);
    tm = gmtime(&timestamp);

    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;
}

注意事项

  • time.h 函数在不同的系统上可能具有不同的实现。在使用这些函数之前,请务必查阅系统文档。
  • time_t 类型的大小和范围可能因系统而异。在使用 time_t 值之前,请务必检查其范围。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值