前置知识: C

复杂声明解析

1 minIntermediate2026/6/14

C语言复杂声明与解析

1. 声明解析规则

// 右左法则:从变量名开始,先向右再向左
int *arr[10];       // arr 是10个指针的数组,指向int
int (*arr)[10];     // arr 是指针,指向10个int的数组
int *func(void);    // func 是函数,返回int指针
int (*func)(void);  // func 是函数指针,返回int
int (*arr[10])(void); // arr 是10个函数指针的数组

2. 使用 typedef 简化

typedef int (*Comparator)(const void*, const void*);
typedef void (*SignalHandler)(int);