
1个回答
展开全部
#include
void
main()
{
int
a[]={1,2,3,4,5,6,7,8,9,10,11,12};//对数组a初始化
int
*p[3];//定义指针数组,每一个元素都是指针
int
m;//定义变量m
for(m=0;m<3;m++)//循环三次
p[m]=&a[m*4];
/**************开始分析循环语句******************
m=0时,p[0]=&a[0]
,p[0]指向a[0]
m=1时,p[1]=&a[4]
,p[1]指向a[4]
m=2时,p[2]=&a[8]
,p[2]指向a[8]
*************************************************/
printf("%d\n",p[2][2]);
//
相当于p[2]+2
因为p[2]指向a[8],故p[2][2]指向a[10]
//a[10]所对应的值是11
,故输出11
}
//请看解释,不懂的可追问哦
void
main()
{
int
a[]={1,2,3,4,5,6,7,8,9,10,11,12};//对数组a初始化
int
*p[3];//定义指针数组,每一个元素都是指针
int
m;//定义变量m
for(m=0;m<3;m++)//循环三次
p[m]=&a[m*4];
/**************开始分析循环语句******************
m=0时,p[0]=&a[0]
,p[0]指向a[0]
m=1时,p[1]=&a[4]
,p[1]指向a[4]
m=2时,p[2]=&a[8]
,p[2]指向a[8]
*************************************************/
printf("%d\n",p[2][2]);
//
相当于p[2]+2
因为p[2]指向a[8],故p[2][2]指向a[10]
//a[10]所对应的值是11
,故输出11
}
//请看解释,不懂的可追问哦
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询