题解 | #KiKi定义电子日历类#

KiKi定义电子日历类

https://www.nowcoder.com/practice/e4c67097cdb242d9a3f38b7cfe839396

#include"stdio.h"

typedef struct day_t Pday_t ;
typedef void (*TInitDay)(Pday_t* day);
typedef void (*TSetDay)(Pday_t* day, int y, int m, int d);
typedef void (*TShowDay)(Pday_t* day);

struct day_t {
    int Day;
    int Month;
    int Year;
    TInitDay init;
    TSetDay  set;
    TShowDay show;
};

void day_init(Pday_t* day) {
    day->Year  = 0;
    day->Day   = 0;
    day->Month = 0;
}

void day_set(Pday_t* day, int y, int m, int d) {
    day->Year  = y;
    day->Month = m;
    day->Day   = d;
}

void day_show(Pday_t* day) {
    printf("%d/%d/%d", day->Day, day->Month, day->Year);
}

Pday_t M_day = {
    .init = day_init,
    .set  = day_set,
    .show = day_show,
};

int main() {
    int y, m, d;
    scanf("%d", &y);
    scanf("%d", &m);
    scanf("%d", &d);

    M_day.init(&M_day);
    M_day.set(&M_day, y, m, d);
    M_day.show(&M_day);

    return 0;
}
纯纯的C语言 面向对象写法#面向对象#
全部评论
void day_init(Pday_t* day) { day->Year = 0; day->Day = 0; day->Month = 0; } void day_set(Pday_t* day, int y, int m, int d) { day->Year = y; day->Month = m; day->Day = d; } void day_show(Pday_t* day) { printf("%d/%d/%d", day->Day, day->Month, day->Year); }这三个函数的接收参数应该写错了吧 Pday_t* day应该改成day_t* day
点赞 回复 分享
发布于 2024-03-17 01:10 四川
看样子像结构体里的属性赋值。
点赞 回复 分享
发布于 2023-07-28 16:55 浙江
Pday_t M_day={ .init=day_init, .set=day_set, .show=day_show, }; 大佬解释一下这一段什么意思
点赞 回复 分享
发布于 2023-04-20 22:05 山西

相关推荐

吐泡泡的咸鱼:我也工作了几年了,也陆陆续续面试过不少人,就简历来说,第一眼学历不太够,你只能靠你的实习或者论文或者项目经历,然后你没有论文,没有含金量高的比赛和奖项,只能看实习和项目,实习来说,你写的实习经历完全不清楚你想找什么工作?行研?数据分析?且写的太少了,再看项目,这些项目先不说上过大学读过研究生的都知道很水,然后对你想找的岗位有什么帮助呢?项目和实习也完全不匹配啊,你好像在努力将你所有的经历都放在简历里想表现你的优秀,但是对于你想找的岗位来说,有什么用呢?最后只能获得岗位不匹配的评价。所以你需要明白你想要找的岗位要求是什么,是做什么的,比如产品经理,然后再看你的经历里有什么匹配的上这个岗位,或者对这个岗位以及这个岗位所在的公司有价值,再写到你的简历上
点赞 评论 收藏
分享
被加薪的哈里很优秀:应该继续招人,不会给你留岗位的
点赞 评论 收藏
分享
评论
21
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务