C++中指针的数组和数组的指针

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hou09tian/article/details/80926355

1 指针的数组

指针的数组指的是一个数组,该数组中的元素为指针。例如

int* A[10];

A是一个数组,该数组中包含了10个元素,每个元素的类型都是int*

2 数组的指针

数组的指针指的是一个指针,该指针指向的内容是一个数组。例如

int*(*p)[10];

p是一个指针,该指针指向一个数组,这个数组中包含10个元素,每个元素的类型都是int*


3 A&A的关系

从以上分析可知,pA的指针。即

p = &A;

如果是

p = A;

则会报错。报错的原因是,C++编译器将数组名替换为指向数组首元素的地址。即A表示的是int*的指针,而p是数组的指针,因而报错!

 

1 A&A

从图1中可以看出,A&A的值虽然相同,但是其类型不同。

对于A&A的区别,请参考C++中对数组名的运算


猜你喜欢

转载自blog.csdn.net/hou09tian/article/details/80926355
今日推荐