指针数组与指向指针的指针有什么区别
6个回答
展开全部
指针数组声明的是数组,数组里放的是指针;而指向指针的指针声明的是指针,只是这指针指向另一个指针。
1.声明时二者不同,如:char *p[10],是指针数组,声明p是有10个元素的数组,其每一个元素都是指向char型变量的指针。而int **p是声明p是一个指针,它指向一个指向int变量的指针。
2.访问时二者不同,指针数组是通过数组获得指针,再由获得的指针获得变量,如:b=*p[2]是把数组p第三个元素作为指针由*取其所指变量的值赋给b。而b=**p是把指针p指向的指针所指变量值赋给b。
3.指针数组至少有两个,常常是多个,可以用p++、p--获得下一个或上一个指针;而指针的指针只有1个,类似p++、p--的操作都是非法的。
1.声明时二者不同,如:char *p[10],是指针数组,声明p是有10个元素的数组,其每一个元素都是指向char型变量的指针。而int **p是声明p是一个指针,它指向一个指向int变量的指针。
2.访问时二者不同,指针数组是通过数组获得指针,再由获得的指针获得变量,如:b=*p[2]是把数组p第三个元素作为指针由*取其所指变量的值赋给b。而b=**p是把指针p指向的指针所指变量值赋给b。
3.指针数组至少有两个,常常是多个,可以用p++、p--获得下一个或上一个指针;而指针的指针只有1个,类似p++、p--的操作都是非法的。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询