C指向数组的指针/指针数组消歧

以下声明之间有什么区别:

int*arr1[8];
int(*arr2)[8];
int*(arr3[8]);

理解更复杂的声明的一般规则是什么

int*arr[8];//int指针数组。
int(*arr)[8];//指向整数数组的指针

第三个与第一个相同

一般规则是运算符优先。随着函数指针的出现,它可能变得更加复杂

发表评论