//指针数组与数组指针
//本题定义了一个指针指向一个10个int元素的数组
#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{
int v[2][10]={{1,2,3,4,5,6,7,8,9,10},{11,12,13,14,15,16,17,18,19,20}};
int (*a)[10]=v; //数组指针
cout<<**a<<endl; //1
cout<<**(a+1)<<endl; //11
cout<<*(*a+1)<<endl; //2
cout<<*(a[0]+1)<<endl; //2
cout<<*(a[1])<<endl; //11
return 0;
// 解析
// *(*a+1)
// V
// **a------> 1 2 3 4 5 6 7 8 9 10
// **(a+1)--> 11 12 13 14 15 16 17 18 19 20
//
// 拓展例题
cout<<"****************拓展例题一*******************"<<endl;
int b[]={1,2,3,4,5};
int *ptr=(int*)(&b+1);
printf("%d %d\n",*(b+1),*(ptr-1)); //2 5
cout<<"****************拓展例题二*******************"<<endl;
char* c[]={"hello","the","world"};
char** pa=c;
pa++;
cout<<*pa<<endl; //the
}
【c++程序】指针数组与数组指针
最新推荐文章于 2024-03-21 17:27:13 发布