C语言日期类实现:包含年月日时分秒及实时变化打印

以下是一个简单的日期类示例代码,展示了如何使用C语言创建一个包含年月日时分秒的日期类,并将其打印到终端:

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

typedef struct {
    int year;
    int month;
    int day;
    int hour;
    int minute;
    int second;
} Date;

void print_date(Date date) {
    printf('%04d-%02d-%02d %02d:%02d:%02d\n', date.year, date.month, date.day, date.hour, date.minute, date.second);
}

int main() {
    time_t current_time;
    struct tm *local_time;
    Date date;

    // 获取当前时间
    time(&current_time);
    local_time = localtime(&current_time);

    // 初始化日期对象
    date.year = local_time->tm_year + 1900;
    date.month = local_time->tm_mon + 1;
    date.day = local_time->tm_mday;
    date.hour = local_time->tm_hour;
    date.minute = local_time->tm_min;
    date.second = local_time->tm_sec;

    // 打印日期
    print_date(date);

    // 修改日期
    date.year = 2022;
    date.month = 12;
    date.day = 31;
    date.hour = 23;
    date.minute = 59;
    date.second = 59;

    // 打印修改后的日期
    print_date(date);

    return 0;
}

代码解释:

  1. 我们首先定义了一个名为 Date 的结构体,包含了年、月、日、时、分、秒六个成员变量。
  2. 接着定义了一个 print_date 函数,用于格式化打印日期对象的值。
  3. main 函数中,我们使用 time 函数获取当前时间,并使用 localtime 函数将其转换为本地时间。
  4. 然后我们初始化了一个 Date 对象,并将本地时间的值赋给它。
  5. 调用 print_date 函数打印当前日期时间。
  6. 接着我们修改了日期对象的值,并再次调用 print_date 函数打印修改后的日期时间。

需要注意的是:

  • 本示例代码中的日期对象只是一个简单的数据结构,它并没有实现任何日期计算或日期格式化的功能。
  • 如果需要更完整的日期类实现,可以参考 C++ 的 std::chrono 库或 Python 的 datetime 模块。
C语言日期类实现:包含年月日时分秒及实时变化打印

原文地址: https://www.cveoy.top/t/topic/jvkn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录