发布时间:2026/8/19 22:06:21
深挖C语言:深入理解指针(1) 目录1.内存和地址2.指针变量和地址2.1 取地址操作符 2.2 指针变量2.3 解引用操作符 *2.4 指针变量的大小3.指针变量类型的意义3.1 指针的解引用3.2 指针 - 整数3.3 void* 类型指针4.指针的运算4.1 指针 - 指针4.2 指针 - 指针4.3 指针的关系运算正文1.内存和地址内存通俗来讲是一个临时存储数据的地方将内存比作宿舍楼假设我们要找内存中的数据也就是某一个房间挨个找的效率非常低但是如果根据楼层和房间的情况给每个房间加上编号那么就会大大提高找房间的效率由此我们引出了地址这一概念。地址相当于宿舍楼中每个房间的门牌号例如101、102、201……在CPU中央处理器中内存被划分为一个个的内存单元每个内存单元的大小是1个字节。其中每个内存单元就相当于一个房间一个内存单元有8个比特位一个比特位可以存储一个2进制的0或者1好比房间内可以住8名学生每个学生代表一个比特位。在CPU中每个内存单元都有一个地址根据这个地址就能够在CPU中快速的找到某一个内存单元C语言中给这些地址起了一个新的名字“指针”。结论内存单元编号 地址 指针2.指针变量和地址2.1 取地址操作符 操作对象变量、数组元素、结构体成员。作用得到操作数在内存中首字节地址。在C语言中创建变量其实就是在向内存中申请空间如图我们已知变量a向内存中申请了空间为了得到变量a的地址就要用到 的使用如图注意int 类型的变量有4个字节理论上来讲是有四个指针的但是输出的结果只有一个指针输出指针是第一个字节的指针已知第一个字节的指针就能够按照从小到大的顺序找到后面是3个字节的指针。2.2 指针变量用 得到的指针是一串数值也是需要用变量来进行存储的例如0x006FFD77存储该数值的变量称为“指针变量”。解释p的左边是 int ** 说明 p 是指针变量int 说明 p 所存储的指针指向的是 int 类型对象。指针变量的类型最好与所存储指针指向的对象类型相同例如 char 类型对应的指针变量的 类型是 char *2.3 解引用操作符 *操作对象 指针变量。作用拿到指针所存储的真实数据。如图利用解引用操作符可以直接对指针所指向的内容进行访问与修改增加了写代码的途径。2.4 指针变量的大小指针变量大小与类型无关与代码所处的平台有关在 x64 平台下所有类型的指针变量大小都是 8 个字节而在 x86 平台下大小都是 4 个字节。这是因为 x64 平台总共有64跟地址线一个地址线能够存储一个二进制的0或者1,一个地址就是64个二进制位组成的二进制序列存储起来需要 8 个字节的空间指针变量的大小就是 8 个字节。3.指针变量类型的意义3.1 指针的解引用对比下面两段代码在调试时观察内存的变化代码1代码2结果得知代码1会将int的4个字节全部改为0但是代码2只是将n的第一个字节改为0结论指针类型决定了对指针解引用时操作权限有多大一次能够操作几个字节。例如char* 的指针一次只能操作一个字节而int* 类型的指针一次能操作四个字节。3.2 指针 - 整数根据代码观察指针的变化不难看出char* 类型的指针变量 1 跳过了一个字节int* 类型的指针变量 1 跳过了四个字节指针变量1 代表着跳过一个所指向的元素 往指针数值大的跳跃- 是往指针数值小的跳跃。结论指针类型决定了指针向前或者向后跨一步的距离有多大。3.3 void* 类型指针void* 类型指针是 无具体类型的指针或者称为 泛型指针作用接受任意类型的指针在函数参数部分用该类型可以实现泛型编程的效果使得一个函数来处理多种类型的数据。局限性void* 指针变量不能够直接进行 解引用操作 和 指针的-运算。4.指针的运算指针三种基本运算指针 - 指针、指针 - 指针、指针的关系运算4.1 指针 - 指针在内存中数组是连续存放的只要知道第一个元素的地址就能顺藤摸瓜找到后面所有元素。如图4.2 指针 - 指针如图结果9结论指针 - 指针 得到的是指针之间的元素个数。前提两个指针指向同一块空间4.3 指针的关系运算如图指针就是地址地址就是编号编号就是数值因此指针可以用来进行比较。数组中随着下标的增长数组元素的地址是由小逐渐变大的。最后感谢阅读欢迎大家交流与指正。

相关新闻

2026/8/19 22:06:21

基于MCU与DAC的正弦波发生器设计:从原理到工程实践

1. 正弦波发生器:从概念到实现的深度拆解在电子工程、音频处理、通信系统乃至基础物理实验的无数场景里,正弦波都是一个绕不开的核心角色。它纯净、周期性的特性,使其成为测试信号、载波、时钟基准的理想选择。而一个稳定、精确、可调的正弦波…

2026/8/19 22:01:20

2025年主流测试用例集工具深度横评与选型指南

1. 测试用例集工具:从“记录本”到“效率引擎”的演进 如果你和我一样,在软件测试这行摸爬滚打了几年,一定经历过从Excel、Word文档管理测试用例的“石器时代”。那时候,一个功能迭代,测试用例文档动辄几十页&#xff…

2026/8/19 22:01:20

TypeScript工程化AI应用开发:从配置管理到流式响应实战

1. 从“Hello World”到“Hello AI”:为什么你的第一个AI调用项目需要从工程化开始 如果你和我一样,是个对AI应用开发充满好奇的前端或全栈开发者,当看到ChatGPT API、Claude API或者各种图像生成模型时,第一反应可能就是&#xf…

2026/8/19 23:11:37

豆包算法革新,重构 GEO 新赛道

2026 年 7 月,豆包算法迎来重大升级,GEO 行业正式迎来发展分水岭。不少服务商面临 AI 信息采信率下降、关键词曝光波动、新增内容难以被模型引用等一系列挑战。依托大批量稿件铺量、信息覆盖的传统 GEO 运营方式效果大幅减弱,低质量自媒体内容…

2026/8/19 23:06:36

零代码构建AI智能体:从RAG知识库到工作流的Coze实战指南

1. 先搞清楚 Coze 到底能帮你做什么,以及它和直接问大模型有什么区别如果你刚接触 AI 应用开发,看到“AI 智能体”、“RAG 知识库”、“工作流”这些词可能会有点懵。简单来说,Coze 是一个让你不用写复杂代码,就能把大语言模型&am…

2026/8/19 4:14:28

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/19 15:09:57

工业传感器与变送器详解:序章 从物理世界到工业数据

序章 从物理世界到工业数据 ——重新认识工业传感器与变送器 工业自动化系统正变得日益复杂。今天的工业现场早已不是简单的控制回路,而是由多层技术共同构成的立体体系:PLC、DCS、SCADA、MES、工业互联网、边缘计算与人工智能。控制系统可以执行复杂算法,工业网络可以实现…

2026/8/19 0:00:35

【单片机课程设计/毕业设计】基于 STM32 与 WiFi 模块的室内通风智能管控系统设计 基于 STM32 的人体存在感知自适应风扇控制系统设计(018503)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

2026/8/19 0:00:35

AI如何驱动数学猜想生成:从大语言模型到自动化数学发现

1. 项目概述:当AI开始“猜”数学定理 最近在AI研究圈里,一个名为“Moonshine”的项目引起了不小的讨论。这名字本身就挺有意思,直译是“月光”,但在数学史上,它特指一个神秘而美丽的联系——魔群月光猜想,连…

2026/8/19 0:00:36

Agentic Web:构建智能体原生网络的基础设施挑战与四大支柱

1. 从“被动网络”到“能动网络”:一个正在发生的范式转移 如果你最近关注AI和Web技术的前沿动态,可能会频繁听到“Agentic Web”这个词。它不像“Web3”那样带着浓厚的金融色彩,也不像“元宇宙”那样充满科幻感,但它所描绘的未来…

2026/8/18 18:23:10

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/19 4:14:38

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/19 16:39:34

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…