Утилита cdecl
Какая интересная утилита есть, оказывается, а я и не знал! Позволяет по любой декларации типа в языке Си получить описание на английском или наоборот — свернуть такое описание в тип. Вот примеры:
cdecl> explain char *(* const volatile (*(*hydra)(int (*)(void), char * const * restrict))[13]) (unsigned long, char * const [static 3]);
declare hydra as pointer to function (pointer to function (void) returning integer, restricted pointer to constant pointer to character) returning pointer to array 13 of constant volatile pointer to function (unsigned long integer, non-empty array 3 of constant pointer to character) returning pointer to character
cdecl> declare fp as pointer to function (pointer to char) returning pointer to array of pointer to char
char* (*(*fp)(char*))[];
Ух ты, какое удачное применение ИИ!
Кстати, да, мне про её существование сказал ChatGPT.
да вот кстати, мне он рассказал про Multicast DNS — как IoT устройства организовывают распределённый днс в локальной сети. И в компьютерах можно подключаться друг к другу по `ssh server1.local`, а не по постоянно меняющемуся айпишнику