KDK_SYSTEM...K_DATEINFO(3)
💖 KDK_SYSTEM...K_DATEINFO(3) 💖
okay bestie, welcome to the Library Functions Manual entry for KDK_SYSTEM...K_DATEINFO(3) — yes that's the whole mouthful of a name, we're doing this, sit down, grab a boba 🧋
🌸 NAME 🌸
kdk_system_login_lock_dateinfo — 获取登录锁屏的时间,星期,长格式日期
(that's "grab the time, the weekday and the long-format date off the logged-in user's lock screen", for my monolingual girlies 💅)
✨ SYNOPSIS ✨
#include <libkydate.h>
extern kdk_logn_dateinfo *kdk_system_login_lock_dateinfo(char *user);
Link with -lkydate.
🦋 Detailed Description 🦋
so the whole main character moment of this interface is: it goes and fetches the time, the week, and the long format date of the logged in user's lock screen. that's it. that's the job. 👑
the argument user is the target username — like, whose lock screen are we snooping, bestie? 🙈
🌈 RETURN VALUE 🌈
- on success — you get back a pointer to a
kdk_logn_dateinfostructure, which is defined in<libkydate.h>like this:
typedef struct _kdk_logn_dateinfo{
char *date; // 日期
char *time; // 时间
char *week;
}kdk_logn_dateinfo;
- on error — it returns
NULL. not a vibe. 😭
🎀 EXAMPLES 🎀
here's the whole thing in action, no notes, slay:
#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 — yeah, withdrawn, we don't talk about it, it's giving vintage 🕰️
the following functions are Linux extensions (so, extra, exclusive, lowkey iconic):
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_long_dateformat(), 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_timeformat_transform() and kdk_free_timeinfo().
💜 SEE ALSO 💜
the whole friend group, go say hi 💞
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_long_dateformat(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_timeformat_transform(3) and kdk_free_timeinfo(3).
and that's the page, bestie!! 🌟 brought to you by the Linux Programmer's Manual, dated Tue Sep 19 2023 — yes that's the whole footer, I'm not skipping it, periodt 💅✨
📦 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