int(* p)[4]和int* p[4]有什么区别

如题所述

int (*p)[4] 和 int *p[4]的区别为:性质不同、长度不同、指向不同。

一、性质不同

1、int (*p)[4]:int (*p)[4]是个指针,指向有四个int类型数据的数组。

2、int *p[4]:int *p[4]是个数组,每个元素都是一个int *指针。

二、长度不同

1、int (*p)[4]:int (*p)[4]的长度为1,为一个数组。

2、int *p[4]:int *p[4]的长度为4,有四个元素空间。

三、指向不同

1、int (*p)[4]:int (*p)[4]的指针指向明确,为数组的逻辑地址位置。

2、int *p[4]:int *p[4]每个指针指向哪里需要程序中后续再定义。

温馨提示:答案为网友推荐,仅供参考
相似回答