指针变量就是数组名,数组名就是指针变量?这句话对吗
4个回答
展开全部
不对。
指针变量不单指可以指向某个数组首地址,还可以指向其他。
比如说结构体的首地址,函数的入口地址等等。或者还可以指向数组当中某个元素。
数组名是一个地址,某种意义上等价于指针。而不是指针变量。
指针变量
int *p=0;
p就是一个指针变量。
指针变量不单指可以指向某个数组首地址,还可以指向其他。
比如说结构体的首地址,函数的入口地址等等。或者还可以指向数组当中某个元素。
数组名是一个地址,某种意义上等价于指针。而不是指针变量。
指针变量
int *p=0;
p就是一个指针变量。
追问
指针变量可以是数组名。数组名是指针。指针变量的范围大
追答
对 这话就对了。 数组名就是他的地址,就是一个指针。
至于指针变量可以成为数组名,不知道你学到没。是对的。
比如说我动态分配内存。
定义一个
int *p=0;
p=(int *)malloc(n*sizeof(int)); //这里用到的是你们将学到的动态分配内存
可以定义一个动态大小的“数组”;
接下来我可以赋值了。
比如说
for(i=0;i<n;i++)
p[i]=i
;
这里P就是一个数组名了
展开全部
总结论:不对。
原因:
前面的一段话“指针变量就是数组名”,指针变量代表的是一个地址所包含的“引用”,并不仅仅表示一个对数组的有效传递。指针变量可以指向任何一个有效地址,并不仅仅包含对“数组数据空间首地址的‘引用’”,如下所示,指针可以指向这些地址:
结构体/联合体/类
函数指针,多级指针
常量指针
4. 数组指针,函数栈入口
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你研究的是编译器的话,这是对的,否则,这是错的。
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我感觉不对
int a[10];
int *P;
p=&a[0]; p是指针变量 a是数组名 p存放着a的地址 我感觉 p和a不能完全画等号
int a[10];
int *P;
p=&a[0]; p是指针变量 a是数组名 p存放着a的地址 我感觉 p和a不能完全画等号
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询