rsdb.net
当前位置:首页 >> C语言数组名和指针的区别? >>

C语言数组名和指针的区别?

数组名本质上就是个指针,也就是地址,但是它是一个常指针,是个固定值,而指针是是指针变量的简称,是个变量,这个变量存放的是地址值,它的值是可以改变的。例如: int *p;int a,b;p=&a; //把变量a的地址赋值给指针p,那么指针p就指向了变量a...

数组和指针的区别:数组名确实表示指向数组首地址的指针,但这个指针很特别,它的值(指针的值指的是指针所指的地址)不能被改写,能改写的仅仅是其指向的内容,换句话说,数组名只能指向数组的首地址,如果有数组char a[];那么如果出现a = a+1;...

指针需要给一个明确的指向才能使用,否则就是一个野指针。 数组名就是一个有明确指向的指针。 数组名有点类似于const指针。比如: int a[10]={0}; a就类似于const int * p = a; 另外,指针的sizeof就是4字节(视系统而定,一般4字节);数组名的si...

从编译生成的角度来说 数组名 没有本身的存储空间,其只是一个地址。 代表数组的首地址。 于是 数组名的值 不可能被改变。 而指针 是一个变量 有自身的存储空间 可以被改变值 执行数学操作。

数组名指向数组的首地址,相当于地址常量,只能做右值。 指针就是指向固定大小内存的地址,又分指针变量和指针常量。 所以数组名也属于指针。

如果你是说你注释那里 改成 int *cpointer; int c_count = 0; 如果是这样的话 那就是 cpointer并没有具体指向的空间 换成 int arr[100]; int *cpointer = arr; int c_count = 0; 这样就好了 指针有了具体的指向了

C语言中,数组的名称等价于数组的首地址, 当然可以利用指针开辟动态空间,使用方式与数组在形式上相同的, 但是他们有一个本质的区别,数组名相当于一个地址常数,而指针是一个以地址为内容的变量。 指针与数组的关系可以参考下面的网页: http...

的概念 指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让 我们分别说明。 ...

1,指针变量用于保存数据的地址,数组用于直接保存数据(当然你可能见过,数组的每个元素是指针,不过,一组指针也是数据,它们各自的内容才是地址) 2,访问方式:指针是间接访问,首先取得指针的内容作为地址,再去该地址访问数据;数组是直接...

网站首页 | 网站地图
All rights reserved Powered by www.rsdb.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com