Я анализируя программу C, в которой я нахожу странным fucntion вызов здесь является определение функции вызова:Функция Синтаксис
static void endSignal (int32_t dummy)
{
if (nTerminating) return;
nTerminating=1;
printf("terminating....\n");
terminateDLNAsystem();
sleep(1);
exit (0);
}
Эта функция принимает параметр int32_t! Теперь это основная функция вызова «endSignal»
int32_t main (int32_t argc, char **argv)
{
/*Statements
.
.
*/
signal(SIGINT, endSignal);
signal(SIGABRT, endSignal);
signal(SIGQUIT, endSignal);
signal(SIGTERM, endSignal);
return 0;
}
основной вызов функции endSignal без какого-либо параметра, то, что произойдет в этом случае?
Это не вызывает 'endSignal', он передает эту функцию в качестве параметра другой функции. – StoryTeller
Прототип 'main' не соответствует стандарту, BTW; 'main' должен возвращать' int', а первым аргументом должен быть 'int'; это в вашем вопросе - это «другая реализация, определенная образом». –