int * func (void)
Как правило, действительная декларация состоит из 3 трех частей и заканчивается; точка с запятой.
часть 1)
Аргумент
пустое среднее - без аргументов
(аргумент может быть сложным и различаться по количеству)
часть 2)
Тип возврата (может быть пользовательским или встроенным)
int * mean - (тип возвращаемого значения) - указатель на int
часть 3)
Имя функции (может быть любым, должно быть логичным для операции, которую она собирается выполнить.
func mean - название функции
Во втором синтаксисе.
у нас есть * между частью 2 и частью 3.
что недопустимо и значимо.
Вы можете добавить * в void или int.
int * func (void)
int func (void *)
или для указателя функции в ответ.
(* pf) ();
или
(* pf) (недействительно)