C语言指针概念的一些见解

博客介绍了指针相关知识,包括一级指针,即指向一段内存空间,可访问存放的值;二级指针本质仍是一级指针,指向一级指针;还提到指针和数组虽用法有相似处,但并无关系,以及指针数组,其本质是存放指针变量的数组。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一级的指针:
首先说一下指针的概念:拿int p来说,就是定义一个指针,p指向一段内存空间,p的值为这块内存空间的地址,这块空间里面存的是int类型的空间,也就是从地址的位置开始的四个字节的内存上会存放int 类型的数据,而p的值永远是地址,并且这个地址不会改变,使用p就可以访问这块内存空间上面存放的值.(自己的理解,可能不全对,初学望理解!)

我们平常使用的int * 、char * 等等都算是比较简单的指针的使用,就是用指针来指向一个某种类型的数据。

二级指针:
在本质上面和一级指针并无太大的区别,本质仍是一级指针,就像二维数组的本质还是一维数组一样,相当于每个二级指针都指向一级指针,例如:int p :p就是*p的地址,*p又是p的地址。

指针和数组:
指针和数组并没有什么关系,只是在许多的情况下用法相同,例如:指针和数组都可以用*来使用,也都可以取下标来使用。
int *p :p是这一块内存的地址
int a[] :a则是数组首元素的地址

指针数组:本质仍然是数组,只不过数组里面存放的是指针变量,例如:
int p[] :p是数组名,数组里面存放的是int类型的指针

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值