- 1
void (* signal(int __sig, void (* __func)(int))) (int)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+53.4
void (* signal(int __sig, void (* __func)(int))) (int)
Объявление типа, представляющего собой указатель на функцию, возращающей указатель на функцию (может я не так понял?) из хедера signal.h.
во вторых, автор - крирворукий ламер
иначе было бы понятно ЧТО и ДЛЯ ЧЕГО
Если я напишу:
int a = 0;
Вам ясно "ЧТО" и "ДЛЯ ЧЕГО" здесь написано? Мне например совершенно ясно только две вещи: создаётся переменная целого типа, и ей присваивается значение 0 (инициализируется присваиванием).
Так же и с кодом выше. Ясно, что определена функция, которая получает указатель на функцию и возвращает указатель на функцию.
Если в C# вы увидите метод, который принимает и отдаёт делегат, вам тоже станет плохо?
смотрим на смайлик в конце и перестаем быть такими серьезными.
typedef void _Cdecl (* _CatcherPTR)();
void _Cdecl (* _Cdecl signal(int __sig, void _Cdecl (* __func)(int))) (int);
typedef заюзан, полегчало?
typedef void (*handler_t)(int);
handler_t signal(int __sig, handler_t handler);
typedef заюзан. полегчало.
int (*(*(*fun)())[3])();
Теперь, главное, придумать куlа её использовать. :D