Siguiendo la regla de espiral (como vinculado a por Chris), y comenzando con el identificador:
a
... es ...
a[4]
.. .una matriz de 4 ...
*a[4]
... punteros a ...
(*a[4])()
... una función sin parámetros ...
*(*a[4])()
... volver puntero a ...
(*(*a[4])())[5]
... una serie de cinco ...
char (*(*a[4])())[5]
... ch ars.
Nota al margen: Ir dar al arquitecto que le ocurrió este un buen rapapolvo, y luego encontrar el programador que escribió este código sin un comentario explicando y darle él un buen rapapolvo. En caso de que esto se le haya dado como tarea, dígale a su maestro que debería haberle instruido sobre cómo usar cdecl en su lugar, o cómo diseñar código de una manera que no parezca garrapatas locas, en lugar de perder su tiempo con este.
[Regla espiral] (http://c-faq.com/decl/spiral.anderson.html) gana de nuevo. – chris
Es un error de sintaxis debido a paréntesis desequilibrados. – Blastfurnace
¿Qué fue ese sitio que tradujo las declaraciones sin sentido de _C a la forma humana? –