C++数组和指针

1.指针数组

1 int *p[4];

等同于

1 int *(p[4]);

也就是说首先它是一个4位数组,具体什么类型不知道。

然后就是int*起作用,给这个4位数组中每一位加类型,其每一位都是int*指针。

2.数组的指针

1 int (*p)[4];

首先它是一个指针,没有指向类型。

然后他指向int[4],也就是指向一个4位int型数组。

3.在指针中使用数组

比如:

 1 int a = 0;
 2 int *p;
 3 
 4 p=&a;
 5 
 6 cout<< p<<endl;
 7 
 8 cout<<&p[0]<<endl;
 9 
10 cout<<&p[1]<<endl;
11 
12 p++;
13 
14 count<<p<<endl;

运行完可以发现&p[1]的结果与(p+1)的地址,两个结果一致。

猜你喜欢

转载自www.cnblogs.com/ligiggy/p/12566354.html