C语言之指针初阶2

目录

1. 指针和数组

2. 二级指针

3. 指针数组


1:指针与数组

不同  : 

    1:指针:指针就是指针,他是描述我们内存中一个空间的地址编号,单位字节,在我们平常所说的指针我们一般指的是指针变量,指针变量是用来存放地址的。

        2:数组就是数组,它是在内存中开辟的一组相同元素类型的集合,它开辟的空间大小可以通过sizeof关键字来求解,且地址的使用随着下标的增大,数组元素地址也会增加。

联系:

        数组名本质上来说是数组首元素的地址,除了两种情况,1:用sizeof(数组名)2:&arr,取出的是数组全部的地址,但是打印,还是首元素的地址,在其它情况下,都是首元素的地址,我们可以通过vs来看:

        于是乎,我们可以用指针来接受数组名字,并且通过指针来访问数组。如:

        

 

2:二级指针

         二级指针:我们知道一级指针是用来存放变量的地址,数组名,而我们创建的指针也要向内存申请空间,所以才会有二级指针的概念,二级指针本质上来说是用来存放一级指针的地址的,

它的语法为:int**pp =&p,假设p是一个指针,而关于int**pp,我们是这样来理解的,首先*代表指针,int* 代表所指向的变量的类型是指针:

        我们知道int*pa =&a的话,*pa,我们通过对pa进行解引用,其实就是pa访问a,而int**ppa,我们**ppa的话首先*ppa是用来访问pa,*pa就是a了.

3:指针数组

        指针数组本质上就是数组,我们知道整形数组,是数组他是用来存放整形的,字符数组是用来存放字符的,那么指针数组也可以这样来理解,指针数组他是用来存放指针的。

        它的语法形式为:int* arr[];在这里我们知道[]的就是表示arr是个数组,前面的int*代表数组中的每个元素都是整形指针类型

        下面我们通过具体的一些代码来实现:

                

 

        指针初阶的知识点已经分享完毕,谢谢大家的观看,如果觉得对你有用的话可以点个赞哦!

        下期文章将是结构体初阶的讲解。

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值