Название: Искусство программирования (задача 9 и 1/2) Отправлено: vimmax от Октябрь 16, 2007, 10:22:52 Опишите тип: Код: (cpp) char *(*(**foo[][8])())[]; Желательно в данном случае не гуглить >:D . Название: Re: Искусство программирования (задача 9) Отправлено: EvilMax от Октябрь 16, 2007, 10:07:31 Мнээ.. Жуть какая-то. Попалось бы такое в свое время на экзамене, ни за что не сдал бы.
Но... Такх. Попробуем по порядку. (**foo[][8]) двумерный массив двойных указателей. Начало многообещающее. Причем обещающее мало хорошего... (**foo[][8])() двумерный массив двойных указателей на функции, которые не принимают ни одного аргумента Уже веселее. (*(**foo[][8])()) ...и возвращают указатель... char * (*(**foo[][8])()) []; ...на одномерный массив указателей на char* Итого: двумерный массив двойных указателей на функции, которые не принимают ни одного аргумента и возвращают указатель на одномерный массив элементов типа char*. Где ошибся? Название: Re: Искусство программирования (задача 9) Отправлено: vimmax от Октябрь 17, 2007, 10:26:08 EvilMax молодца ! +1
"foo is array of array of 8 pointer to pointer to function returning pointer to array of pointer to char" источник (http://www.unixwiz.net/techtips/reading-cdecl.html) |