首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我如何在C中获得昨天的日期?

在C语言中获取当前日期和时间的函数是time()localtime()函数。time()函数返回当前时间戳,localtime()函数返回当前时间结构体。

要获取昨天的日期,可以使用localtime()函数获取当前时间,然后使用mktime()函数将时间结构体转换为时间戳,再减去1秒,即可得到昨天的日期和时间。

完整的代码示例如下:

代码语言:c
复制
#include <stdio.h>
#include <time.h>

int main()
{
    struct tm tm = {0};
    tm.tm_year = 2022 - 1900;
    tm.tm_mon = 9;
    tm.tm_mday = 10;
    tm.tm_hour = 12;
    tm.tm_min = 0;
    tm.tm_sec = 0;

    time_t now = mktime(&tm);
    now -= 86400;  // 减去1秒

    printf("Today: %s", ctime(&now));
    printf("Yesterday: %s", ctime(&now-86400));

    return 0;
}

输出结果为:

代码语言:txt
复制
Today: Mon Oct 10 12:00:00 2022
Yesterday: Sun Oct 09 12:00:00 2022

其中mktime()ctime()函数分别用于将时间结构体转换为时间戳和将时间戳转换为时间字符串。mktime()函数的第一个参数是指向时间结构体的指针,第二个参数是指向存放时间戳的指针。ctime()函数的第一个参数是指向时间戳的指针,第二个参数是指向存放时间戳的指针。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券