Указатель на функцию, возвращающую многомерный массив - PullRequest
1 голос
/ 13 августа 2010

Что касается этого вопроса, мы можем объявить функцию, которая возвращает указатель на массив, как:

int (*function())[3]

, которая возвращает массив Ax3, хорошо.

Какправильный способ объявить указатель на функцию, которая указывает на функцию такого типа?

Ответы [ 3 ]

4 голосов
/ 13 августа 2010
        f                 -- f
       *f                 -- is a pointer
      (*f)()              -- to a function
     *(*f)()              -- that returns a pointer
    (*(*f)())[3]          -- to a 3-element array 
int (*(*f)())[3]          -- of int
0 голосов
/ 13 августа 2010

Возможно

int (*(*function_pointer)())[3];

(по крайней мере, gcc, кажется, это понимает)

0 голосов
/ 13 августа 2010

См. эту ссылку , что весьма полезно.Обратите внимание на приемы с использованием typedefs

typedef int (*pfintarray())[3];

pfintarray myFunc() { /* etc
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...