C语言 二级指针和多级指针

news2025/1/13 11:59:13

什么是二级指针?

假设:

int a = 10;

int * p = &a;

如上,p是指针变量,寄存的是a的地址,指向的是元素a

那么,指针变量p有地址吗?指针变量p的指针指向的是?

int * * pp = &p;

答案是有的,指针变量也有地址,并且指针变量p也有着指向它地址的指针变量pp,也因为指针pp变量指向的地址是指针变量p的,而指针变量p指向的是地址a,所以指针变量pp称之为二级指针。

int * * pp 

pp指向的是 指针变量p,pp也表示指针变量,int*是表示指针pp指向的地址类型是int* ,而*又表示为指针。

同时,因为二级指针pp指向的是指针p的地址,而指针p中寄存的是元素a的地址,所以根据递进关系,最后打印二级指针,得到的是元素a中的数值。

printf("%d",**pp);

 而最后,我们可以通过衍生,得到三级指针,三级指针的道理和二级指针一样,二级指针变量也是具有地址的,而二级指针变量的地址寄存在三级指针变量中,而二级指针变量中寄存着一级指针变量的地址,一级指针变量的地址寄存着其他非指针变量的地址。

最后往后以此类推……………………

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/869992.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《系统架构设计师教程》重点章节思维导图

内容来自《系统架构设计师教程》,筛选系统架构设计师考试中分值重点分布的章节,根据章节的内容整理出相关思维导图。 重点章节 第2章:计算机系统知识第5章:软件工程基础知识第7章:系统架构设计基础知识第8章&#xff1…

数据结构——单链表的实现(c语言版)

前言 单链表作为顺序表的一种,了解并且熟悉它的结构对于我们学习更加复杂的数据结构是有一定意义的。虽然单链表有一定的缺陷,但是单链表也有它存在的价值, 它也是作为其他数据结构的一部分出现的,比如在图,哈希表中。…

JZ32 从上往下打印二叉树(Java)

题目地址:从上往下打印二叉树_牛客题霸_牛客网 题目回顾: 不分行从上往下打印出二叉树的每个节点,同层节点从左至右打印。例如输入{8,6,10,#,#,2,1},如以下图中的示例二叉树,则依次打印8,6,10,2,1(空节点不打印&…

keil下载程序具体过程2:硬件链路

引言 本篇博客将介绍keil下载程序的过程中,镜像文件将经过哪些硬件,以及简单的介绍他们之间的协议。 一、硬件连接 图1 硬件连接 将PC、jlink、芯片使用ubs线、swd线连接好之后,在PC上的keil软件中,我们选择对应的仿真器&#xf…

滤波器必须掌握的关键知识

一个理想滤波器应该是在通频带内具有均匀且稳定的增益,对信号的其余频带则具有无穷大的衰减。然后,各种实际的频率响应曲线从阻带或从通带到阻带总有一个逐渐过渡的过程,距离理想情况有一定距离,不像其那样跳跃变化,因…

大O表示法表示算法运行时间

大O表示法用来度量一个算法的运行时间。书写为O(n),其中n为一个算法所执行的操作次数。当我们讨论算法的运行时间时,说的是一个算法在给定的输入列表增加的情况下算法执行操作数的增速,也就是运行时间的增速。 二分查找算法 下面介绍两种简…

Matlab的Filter Designer工具设计二阶低通滤波器

Matlab版本:2018b 本文要求:设计一个二阶巴特沃斯低通滤波器用于嵌入式软件滤波,传感器采样频率是20KHz,截止频率是333Hz,获取滤波系数,本文不包括二阶滤波推导和代码编写。 打开Matlab->APP->Filt…

多线程中常见的成员方法

1.常见的成员方法 如果没有给线程设置名字,线程也是有默认名字的,格式: Thread-X(X序号,从0开始的) 2.创建名字的线程构造 用构造方法给线程设置名字 当JVM虚拟机启动之后,会自动的启动多条…

shell脚本开发

shell脚本语言属于弱类型的语言,无需声明变量类型,直接定义使用 shell语言定义的变量,数据类型默认都是字符串类型 调用历史记录命令:! 历史记录id

ipconfig显示的内容分析(二)子网掩码

在cmd中输入ipconfig,经常会看到子网掩码。如下: 子网掩码225.225.225.0的二进制数是[1111 1111].[1111 1111].[1111 1111].[0000 0000]。 子网掩码225.225.224.0的二进制数是[1111 1111].[1111 1111].[1111 1110].[0000 0000]。 子网掩码的作用是什么…

C语言 ——函数指针变量

1、概念: 数组指针 - 是指针-是指向数组的指针,是存放数组地址的指针 函数指针 - 是指针 是指向函数的指针 - 是存放函数地址的指针!! 如上所示,函数也是具有地址的,而存放函数地址的指针变量成为函数指针变量。 而有如上所示&a…

奇舞周刊第502期:CSS 的 will-change,为什么有时候能优化几十倍的性能?

记得点击文章末尾的“ 阅读原文 ”查看哟~ 下面先一起看下本期周刊 摘要 吧~ 奇舞推荐 ■ ■ ■ CSS 的 will-change,为什么有时候能优化几十倍的性能? will-change 一个既陌生又熟悉的属性,以前在使用这个属性的时候,单纯是因为要…

VS Code中C++程序的调试(Debug)功能

有一个.vscode文件,存放当前工作区相关配置文件的目录。 launch.json {"version": "0.2.0","configurations": [{"name": "gcc.exe - 生成和调试活动文件", // 该调试任务的名字,启动调试时会在待…

智能优化算法:猎豹优化算法-附代码

智能优化算法:猎豹优化算法 文章目录 智能优化算法:猎豹优化算法1.猎豹优化算法1.1 初始化1.2 搜索策略1.3坐等策略1.4攻击策略 2.实验结果3.参考文献4.Matlab5.python 摘要:CO算法是Mohammad AminAkbari等人于2022年受自然界猎豹狩猎启发而提…

linux学习(进程管理)[8]

创建进程 myproc.c #include <stdio.h> #include <unistd.h>int main() {printf("我是父进程\n");pid_t id fork();if(id < 0){printf("创建子进程失败\n");return 1;}else if(id 0){while(1){printf("我是子进程&#xff1a; pid…

7.利用matlab完成 符号方阵的特征值分解和 符号矩阵的奇异值分解 (matlab程序)

1.简述 &#xff08;1&#xff09;特征值分解&#xff1a;函数eig 格式&#xff1a;[V,D] eig(A) %计算A的特征值对角阵D和特征向量V&#xff0c;使AVVD成立。 注意&#xff1a;特征值分解时&#xff0c;使用eig&#xff0c;矩阵A必须是方阵。 A [0 1;1 1]; [V,D] ei…

JAVA初体验 (HelloWorld)

1.编写代码 文件名字HelloWorld.java public class HelloWorld{public static void main(String [] args){System.out.printf("hello world!");} } 2.编译&#xff08;cmd&#xff09; javac HelloWorld.java 运行完之后 会出现一个 HelloWorld.class 3.运行 j…

APS生产排产将排程计划可视化

什么是生产计划可视化&#xff1f; 在制定生产计划时&#xff0c;由于是多工序的生产&#xff0c;物料及设备的匹配&#xff0c;生产工艺路线的安排&#xff0c;产品结构的不同等因素&#xff0c;生产计划的排程有一定的难度。 那么如何将一个复杂的生产计划转化为一张清晰明了…

Python分享之 Spider

一、网络爬虫 网络爬虫又被称为网络蜘蛛&#xff0c;我们可以把互联网想象成一个蜘蛛网&#xff0c;每一个网站都是一个节点&#xff0c;我们可以使用一只蜘蛛去各个网页抓取我们想要的资源。举一个最简单的例子&#xff0c;你在百度和谷歌中输入‘Python&#xff0c;会有大量和…

Python(三)

诚信像一面镜子&#xff0c;一旦打破&#xff0c;你的人格就会出现裂痕。 存在短路的情景 谢谢观看 Python(三)