温馨提示×

linux strftime如何获取当前时间

小樊
81
2025-01-01 18:31:55
栏目: 智能运维

在Linux中,您可以使用strftime函数来格式化当前时间

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

int main() {
    time_t rawtime;
    struct tm * timeinfo;

    // 获取当前时间
    time(&rawtime);

    // 将时间转换为可读格式
    timeinfo = localtime(&rawtime);

    // 使用strftime格式化时间
    char buffer[80];
    strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", timeinfo);

    // 输出格式化后的时间
    printf("当前时间: %s\n", buffer);

    return 0;
}

在这个示例中,我们首先使用time()函数获取当前时间(从1970年1月1日00:00:00 UTC开始的秒数),然后使用localtime()函数将这个时间转换为本地时间。接下来,我们使用strftime()函数将本地时间格式化为一个字符串,最后输出这个字符串。

在这个示例中,我们使用了以下格式化指令:

  • %Y - 四位数的年份(例如:2022)
  • %m - 两位数的月份(01-12)
  • %d - 两位数的日期(01-31)
  • %H - 两位数的小时(00-23)
  • %M - 两位数的分钟(00-59)
  • %S - 两位数的秒数(00-59)

您可以根据需要调整这些指令以获得所需的时间格式。

0