C—指针初阶(2)

如果看完阁下满意的话,能否一键三连呢,我的动力就是大家的支持与肯定,冲!

二级指针

我们先看概念以及作用:用来存放一级指针的地址的指针

先看例子,我们逐一分析

我们先分析上面那个"1" 标注那里:

*作为标志代表p 是指针变量,int表示后面那个"&a "中的a

int类型

我们在分析标注的"2"那里:

从左到右第二个***代表pc** 是指针变量,"int*"需要当做一个整体,表示后面那个**"&p"的类型**

这样说你们理解了吗!上面的那个pc就是二级指针

我们再看一个例子:

我们直接看指针打印方式:

从左到右第一个***** 表示对***pc解引用操作得到*p**,然后第二个***** 表示再对p进行解引用操作得到b(赋值操作也可以这么理解)

**简记:**就是套娃操作,一层一层叠起来的

指针数组

概念:指针数组是数组,表示存放指针类型的数组

我们参考第一个例子:

解析:

同理数组名前面的***** 是作为标志代表Arr是指针数组;

Arr【i】 得到是每一个元素的地址,我们再进行解引用操作,就得到了元素;

我们再看一个例子,简单了解一下指针数组的作用:

解析:我们先看上面那幅图:**p【i】 【j】**中的i表示先访问的是指针数组中的每个元素地址,j表示再访问每个指针数组中的每个元素,就是通过指针数组的每个地址找到对应数组的每个元素

或者第二种打印方式(个人认为第二种方式比较好理解,但是也要了解第一种打印方式

解析:我们直接看与第二幅图不同的打印那个地方。(p【i】+j) 表示先通过i找到第i个指针数组元素,然后移动j位,理解为移动地址就好了。得到地址后我们再进行解引用操作,就得到了元素

初阶的指针(后面还有进阶的,我也会慢慢更的哦!)就更完了,还有一个相关的结构体 ,稍等一天啊!

相关推荐
Nebula嵌入式5 小时前
【C语言】09-深入解析main函数
linux·c语言·开发语言·嵌入式
天空'之城7 小时前
C 语言工业级通用组件手写 23:卡尔曼滤波(简易版)
c语言·卡尔曼滤波·嵌入式算法·工业级组件
888CC++7 小时前
C语言与C++的区别:从面向过程到面向对象
java·c语言·c++
库玛西9 小时前
C++ 运行时多态 :核心总结与原理图解
c语言·c++·笔记
天空'之城11 小时前
C 语言工业级通用组件手写 21:限幅消抖滤波
c语言·嵌入式算法·工业级组件·限幅消抖滤波
Aurorar0rua11 小时前
CS50 x 2024 Notes Algorithms - 07
c语言·开发语言·学习方法
神罚天下ET12 小时前
典型arm位单片机启动流程(从上电到main.c)
c语言·arm开发·单片机
noipp15 小时前
推荐题目:洛谷 P3726 [AHOI2017/HNOI2017] 抛硬币
c语言·数据结构·c++·算法·编程·洛谷·luogu
c2385615 小时前
C/C++每日一练14
c语言·c++·算法
apocelipes16 小时前
Linux NTSYNC 简明教程
c语言·并发·linux编程