-------指针数组:
是数组,用来存放指针
-------数组指针:
指向数组的指针
1.
#include<stdio.h>
int main()
{
int arr[5] = {1,2,3,4,5} ;
int (*p)[5] = &arr ; //也可以定义后写成 p = &arr ;
int i ;
for(i=0;i<5;i++)
{
printf("%d | ",(*p)[i]);
}
}
#include<stdio.h>
int main()
{
int arr[10] = { 0 } ;
int (*p1)[10] = &arr ;
int *arr_[10] = {};
int* (*p2)[10] = &arr_ ;
}
#include<stdio.h>
int main()
{
int arr[5] = {1,2,3,4,5} ;
int (*p)[5] = &arr ;
int i ;
for(i=0;i<5;i++)
{
printf("%d ",(*p)[i]);
printf("%d\n",*(*p+i));
}
}
#include<stdio.h>
int main()
{
int arr[2][5] = {{0,1,2,3,4},{5,6,7,8,9}};
int (*p)[5] = arr ;
int i , j ;
for(i=0;i<2;i++)
{
for(j=0;j<5;j++)
{
//printf("%d ",p[i][j]);
//printf("%d ",*(*(p+i)+j));
//printf("%d ",(*(p+i))[j]);
printf("%d ",*(p[i] + j ));
}
}
}
如何判断指针的数据类型?
数组名和*或者【】结合后,剩下的东西都是数据类型