头部左侧文字
头部右侧文字
当前位置:网站首页 > 资讯 > 正文

指针数组和数组指针区别,指针数组和数组指针的表示

作者:admin日期:2024-04-14 05:00:20浏览:35分类:资讯

C语言中:数组指针与指针数组有什么区别?

1、指针数组,指数组元素就是指针 数组指针,对于一维数组来说就是数组名 故对于一维数组来说,数组名是第一个元素的指针,而元素本身也是指针,故数组名是指向指针的指针。

2、联系:如上面所说,数组只是定义在栈区的一个连续变量,它的首地址就是一个指针。总结:不仅数组有指针,所有变量都有指针,指针说白了就是内存中的地址,就像一个房间必须有一个房间号。

3、是这样定义的 int *p,我们把a[10]看成一个整体,然后就知int* a[10]是在定义一个数组,数组里的元素全部是指针,所以a[10]也就是指针数组了。

4、数组是用指针方式实现的,但数组值是一个常量,即不能改变数组的首地址,而指针是一个变量,可以改变它的值;如:数组 a和指针p,p=a+1;是合法的,但a=a+1;是不合法的。

分析指针数组与数组指针的区别和应用

而b=**p是把指针p指向的指针所指变量值赋给b。指针数组至少有两个,常常是多个,可以用p++、p--获得下一个或上一个指针;而指针的指针只有1个,类似p++、p--的操作都是非法的。

指针数组就是连续一条街道上的房子主人各自都留了纸条等待送货员取用。数组指针就是一条街道的第一个房子的门牌号。

这两种形式没有任何区别,定义的都是char* 类型的指针,不过有的书上建议采用*和变量相靠近的写法,这样可以避免连续声明时的错误,例如:char *ptr,a;可以明显知道一个是指针的变量一个是char类型的变量。

暂无评论,来添加一个吧。

取消回复欢迎 发表评论: