Я хочу объявить тип указателя, которые указывают на функции, поэтому я стараюсь:ЬурейеЕ тип указателя функции
typedef void (*print)(void);
отлично работает
void (*print)(void);
р является переменной ponter, а не тип.
typedef (void) (*print)(void);
ошибки Ожидается идентификатор или '(' перед 'пустота'
typedef void (*)(void) Print;
ошибка: ожидается, '=', '', ';', 'ASM' или «_ атрибут _ . 'перед 'Print'
Мой вопрос:
у меня есть использовать
typedef
, чтобы объявить тип указателя функции?Почему
typedef (void) (*print)(void);
неправ? что означает()
?Почему я не могу написать таким образом:
typedef void (*)(void) Print
?
Вам не нужно typedef, чтобы объявить символ указателя функции. – mawia
Как это сделать? отправьте идею, пожалуйста. –
На все ваши вопросы можно в значительной степени ответить «потому что разработчики языка решили это так» –