Что возвращает функция?

int (*p[10]) (); //Что возвращает функция ?


Ответы (1 шт):

Автор решения: AlexGlebe

Вы спрашиваете что возвращает функция, а показываете объявление массива указателей на функции.

Синтаксис типа указателей на функцию выглядит так :

тип_возвращяемый ( * ) ( список_типов_аргументов_функции ) ;

Объявление имени типа указателя на функцию :

typedef тип_возвращяемый ( * имя_типа_указателя_на_функцию ) 
  ( список_типов_аргументов_функции ) ;

Объявление переменной указателя на функцию :

тип_возвращяемый ( * имя_переменной_указателя_на_функцию ) 
  ( список_типов_аргументов_функции ) ;

Массив указателей на функции :

тип_возвращяемый ( * имя_массива_указателей_на_функции [ количество ] ) 
  ( список_типов_аргументов_функции ) ;

Пользоваться этим массивом просто, пробиваете указатель функции куда-нибудь в массив, и вызываете. Возвратится тип int.

int fun5 ( ) {
  return 5 ; }
...
int (*p[10]) ();
p [ 5 ] = & fun5 ;
int result = ( * p [ 5 ] ) ( ) ;

Вернётся число 5 .

→ Ссылка