C语言中这几种数组,弄明白了吗?int(*pai[2])[5],int *aapi[2][2], int **p[2], int *numT[5], int(*num2)[5]

int main() {

int a[5]= {1,3,5,7,9};
int(*num1)[5]=&a;
int *num[5]= {&a[0],&a[1],&a[2],&a[3],&a[4]};

int b[5]= {2,4,6,8,10};
int(*num2)[5]=&b;
int *numT[5]= {&b[0],&b[1],&b[2],&b[3],&b[4]};
cout<<"=二级指针与指针数组"<<endl;
intpp=num;
for(int i=0; i<5; i++) {
printf("%d ",
pp);
++pp;
}
printf("\n\n");

cout<<"=二级指针数组"<<endl;
int **p[2]= {num,numT};
for(int j=0; j<2; j++) {
for(int i=0; i<5; i++) {
printf("%d ",*p[j][i]);
}
printf("\n");
}

cout<<"=二维指针都存int*类型的数据="<<endl;
int aapi[2][2]= {&a[0],&a[1],&a[2],&a[3]};
for(int i=0; i<2; i++) {
for(int j=0; j<2; j++)
cout<<
aapi[i][j]<<" ";
cout<<endl;
}
cout<<"
=行指针数组====="<<endl;
int(pai[2])[5]= {num1,num2};
for(int i=0; i<2; i++) {
for(int j=0; j<5; j++)
cout<<
(*(pai[i])+j) <<" ";
cout<<endl;
}

return 0;
}

posted @ 2024-01-12 00:46  万佛从心  阅读(38)  评论(0)    收藏  举报