KDK_SYSTEM...DATEFORMAT(3)
💅 KDK_SYSTEM...DATEFORMAT(3) 💅
okay so real talk bestie, you found the KDK_SYSTEM...DATEFORMAT(3) page, it lives in the Library Functions Manual section, and it is entirely about teaching the date how to serve long-format looks. no cap. let's get into it 🫶
✨ NAME ✨
kdk_system_set_long_dateformat — 设置日期长格式 (setting the long date format, literally the whole point)
🦋 SYNOPSIS 🦋
#include <libkydate.h>
extern int kdk_system_set_long_dateformat(char *format);
Link with -lkydate.
🌸 DETAILED DESCRIPTION 🌸
so the main function of this interface — its whole main character job — is to set the long date format. that's it, that's the assignment 💖
the argument format is the date format. and bestie, pls, please pass in one of the long formats. like. one of the long ones. that's the vibe check and you have to pass it 🙈
👑 RETURN VALUE 👑
- On success, it returns
1. slay. ✨ - On error, it returns
-1. 😭
🍓 EXAMPLES 🍓
here's a whole little program doing the thing, copy it exactly, every character matters (iykyk):
#include "libkydate.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>
#include <glib.h>
#include <glib-object.h>
int main()
{
int ret = kdk_system_set_long_dateformat("2230年3月4日");
ret = kdk_system_set_short_dateformat("22/5/3");
char *ld = kdk_system_get_longformat_date();
printf("long res = %s0, ld);
free(ld);
char *sd = kdk_system_get_shortformat_date();
printf("short res = %s0, sd);
free(sd);
char *ll = kdk_system_get_longformat();
printf("longformat = %s0, ll);
free(ll);
char *ss = kdk_system_get_shortformat();
printf("shortformat = %s0, ss);
free(ss);
struct tm ptr;
ptr.tm_year = 2322;
ptr.tm_mon = 9;
ptr.tm_mday = 3;
char *lt = kdk_system_longformat_transform(&ptr);
printf("longformat_transform = %s0, lt);
free(lt);
ptr.tm_year = 2022;
ptr.tm_mon = 3;
ptr.tm_mday = 2;
char *st = kdk_system_shortformat_transform(&ptr);
printf("shortformat_transform = %s0, st);
free(st);
kdk_logn_dateinfo *info = kdk_system_login_lock_dateinfo("szm");
printf("date = %s,time = %s,week = %s0,info->date,info->time,info->week);
kdk_free_logn_dateinfo(info);
ptr.tm_hour = 19;
ptr.tm_min = 3;
ptr.tm_sec = 2;
kdk_timeinfo *ti = kdk_system_timeformat_transform(&ptr);
printf("time = %s, timesec = %s0, ti->time, ti->timesec);
kdk_free_timeinfo(ti);
return 0;
}
🌈 CONFORMING TO 🌈
these functions are as per the withdrawn POSIX.1e draft specification. yes, withdrawn — it's giving vintage, it's giving archive-core, do not come for me about it 💀
the following functions are Linux extensions:
kdk_system_get_dateformat(), kdk_system_set_dateformat(), kdk_system_set_24_timeformat(), kdk_system_set_12_timeformat(), kdk_system_get_now_dateformat(), kdk_system_get_now_timeformat(), kdk_system_tran_dateformat(), kdk_system_nowtime(), kdk_system_nowdate(), kdk_system_shortweek(), kdk_system_longweek(), kdk_system_second(), kdk_system_logn_dateinfo(), kdk_system_gjx_time(), kdk_date_freeall(), kdk_free_dateinfo(), kdk_free_logn_dateinfo(), kdk_system_set_short_dateformat(), kdk_system_get_longformat_date(), kdk_system_get_shortformat_date(), kdk_system_get_longformat(), kdk_system_get_shortformat(), kdk_system_longformat_transform(), kdk_system_shortformat_transform(), kdk_system_login_lock_dateinfo(), kdk_system_timeformat_transform() and kdk_free_timeinfo().
🧚 SEE ALSO 🧚
the whole friend group, go say hi to all of them:
kdk_system_get_dateformat(3), kdk_system_set_dateformat(3), kdk_system_set_24_timeformat(3), kdk_system_set_12_timeformat(3), kdk_system_get_now_dateformat(3), kdk_system_get_now_timeformat(3), kdk_system_tran_dateformat(3), kdk_system_nowtime(3), kdk_system_nowdate(3), kdk_system_shortweek(3), kdk_system_longweek(3), kdk_system_second(3), kdk_system_logn_dateinfo(3), kdk_system_gjx_time(3), kdk_date_freeall(3), kdk_free_dateinfo(3), kdk_free_logn_dateinfo(3), kdk_system_set_short_dateformat(3), kdk_system_get_longformat_date(3), kdk_system_get_shortformat_date(3), kdk_system_get_longformat(3), kdk_system_get_shortformat(3), kdk_system_longformat_transform(3), kdk_system_shortformat_transform(3), kdk_system_login_lock_dateinfo(3), kdk_system_timeformat_transform(3) and kdk_free_timeinfo(3).
and that's the whole page bestie 🎀 huge shoutout to the Linux Programmer's Manual for publishing this baddie, dated Tue Sep 19 2023 — genuinely iconic, no notes, go set your long date format and live your truth 💜✨
📦 where this page comes from
- arch rolling: libkysdk-system 3.0.1.4-1 · LGPL-3.0-or-later AND LGPL-2.1-only OR LGPL-3.0-only AND LGPL-2.1-only WITH Qt-LGPL-exception-1.1 OR LGPL-3.0-only WITH Qt-LGPL-exception-1.1 AND MIT
- ubuntu resolute: libkysdk-system-dev 3.0.1.2-0ubuntu1 · LGPL-3.0-only
- ubuntu stonking: libkysdk-system-dev 3.0.1.3-0ubuntu1 · LGPL-3.0-or-later
- 💖 girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms