gpt4 book ai didi

c - 将 "th"、 "nd"或 "rd"添加到 C 中的日期

转载 作者:太空狗 更新时间:2023-10-29 14:51:19 25 4
gpt4 key购买 nike

我正在为我的键盘修改一些驱动程序软件,其中一部分是将日期输出到我的键盘屏幕的插件。目前它说的是 1 月 1 日,但我真的希望它说的是 1 日、2 日、3 日或 4 日或其他什么。

我一直在到处寻找某种代码,这些代码可以让我了解如何做,但我只能找到 C# 的示例,而我正在使用 C。

编辑:

const char *ordinals[] = {"", "1st", "2nd", "3rd", "4th", "5th", "6th", "7th", "8th", "9th", "10th", "11th", "12th", "13th", "14th", "15th", "16th", "17th", "18th", "19th", "20th", "21st", "22nd", "23rd", "24th", "25th", "26th", "27th", "28th", "29th", "30th", "31st"};

sprintf(date, "%s %s", ordinals[t->tm_mday], mon);

最佳答案

因为您只需要从 131 的数字,所以最简单的方法是定义一个序数数组,如下所示:

const char *ordinals[] = {"", "1st", "2nd", "3rd", "4th"..., "31st"};
...
printf("%s of %s", ordinals[dayNumber], monthName);

这比通过算法来做更好,因为它更具可读性,并且更容易国际化,如果您以后在某个时候遇到这种情况。

关于c - 将 "th"、 "nd"或 "rd"添加到 C 中的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14113010/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com