This looks like an evil example straight from the 2nd edition of Kernighan and Ritchie (The C Programming Language), p. 122 (section 5.12: Complicated Declarations), where it is described as a function returning a pointer to an array of pointers to functions returning char. Here is a usage example:
#include <stdio.h>
char x1() { return 'a'; } // Function returning a char-----1
char (*x2[])() = {&x1}; // Array of pointers to functions returning char------2
char (*(*x())[])() { return &x2; } // Function returning a pointer to the above----3
// 分析:将*x()看做一个整体==XX,则上式等价于char (*XX[])() ,这样3式就转化为2式,只是XX为函数指针
// so:x是一个函数,它返回一个指针,该指针指向一个一维数组,该一维数组的元素为指针,这些指针分别指向函数,这些函数的返回值维char类型
void main()
{
char (*x3)() = **x(); // Pointer to a function returning char
printf("This is the value: %c\n", x3());
}
Alternatively, you could skip declaring x3 altogether and just write
printf("This is the value: %c\n", ((*(x()))[0])());