C语言time()函数与日期时间的关系

1949idc 2年前 (2024-09-19) 阅读数 324 #编程语言

time() 是 C 语言中的一个函数,它用于获取当前日几时间的秒数。这个函数返回的是从 1970 年 1 月 1 日 00:00:00(UTC)到现在所经过的秒数。这个值通常被称为 “Unix 时间戳”。

time() 函数的原型如下:

#include <time.h>
time_t time(time_t* timer);

time() 函数接受一个指向 time_t 类型的指针作为参数。如果传入的是 NULL,那么函数将返回当前的 Unix 时间戳;否则,它会将当前的 Unix 时间戳存储在指针所指向的变量中,并返回该值。

下面是一个使用 time() 函数的简单示例:

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

int main() {
    time_t currentTime;
    currentTime = time(NULL);

    printf("当前的 Unix 时间戳是:%ld\n", (long)currentTime);
    return 0;
}

要将 Unix 时间戳转换为可读的日期和时间格式,可以使用 localtime()gmtime() 函数将其转换为 struct tm 结构体,然后使用 strftime() 函数将其格式化为字符串。下面是一个示例:

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

int main() {
    time_t currentTime;
    struct tm *localTime;

    currentTime = time(NULL);
    localTime = localtime(&currentTime);

    char formattedTime[26];
    strftime(formattedTime, sizeof(formattedTime), "%Y-%m-%d %H:%M:%S", localTime);

    printf("当前的日期和时间是:%s\n", formattedTime);
    return 0;
}

这个示例将输出类似于 “2022-01-01 12:34:56” 的日期和时间。

版权声明

本文内容由互联网用户自发贡献,该文观点仅代表作者本人
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

© 2010 首途云安 & 厦门硕顿信息技术有限公司 & 闽ICP备11016866号  增值电信业务经营许可证:B1-20203020 地址:福建厦门思明区嘉禾路297号1806
高新技术企业
软件产品证书
计算机软件著作权
ISO认证
国家3A企业