第10天:指针 — 操作指南 ★★★ 全12天最重要的一天
小白记录日常学习一、今日任务总览| 步骤 | 内容 | 时间 ||------|------|------|| ① | 阅读教材第10章 §10.4-10.7 | 80分钟 || ② | 用纸笔画内存图来理解指针 | 30分钟 || ③ | 手打并运行3个练习 | 60分钟 || ④ | 反复体会练习2swap的成功 | 30分钟 |二、今日核心知识点2.1 指针是什么 —— 用生活类比想象一座公寓楼普通变量 a 42 指针变量 p a房间号101号 房间号305号房间里放着42 房间里放着一张纸条写101号指向101号房间你去101号 → 看到42 你去305号 → 看到纸条101号按纸条去找101号 → 看到42cint a 42; // a 是普通变量存的是 42int *p a; // p 是指针变量存的是 a 的地址门牌号a → 42 // 直接取值*p → 42 // 间接取值先去p拿地址再去那个地址拿值a → a 的地址 // 取地址2.2 和 * —— 两个核心运算符| 符号 | 名字 | 作用 | 例子 ||------|------|------|------|| | 取地址 | 问你住哪 | p a; → p 知道 a 住哪 || * | 解引用 | 去这个地址看看 | *p 100; → 去 p 存的地址把值改成 100 |cint a 10;int *p a; // p 存了 a 的地址*p 20; // 通过地址修改 a → a 变成 20printf(%d, a); // 输出 20**两个用 * 的场景不要搞混**cint *p a; // 这里的 * 是声明p 是指针类型*p 20; // 这里的 * 是解引用去 p 存的地址那里2.3 指针实现真正的 swap ★ 今天的顿悟时刻第8天的失败cvoid swap(int x, int y) // x 和 y 是副本{int temp x; // 交换副本x y;y temp;} // 函数结束副本销毁原件没动今天的成功cvoid swap(int *x, int *y) // x 和 y 存的是地址门牌号{int temp *x; // 去 x 指向的房间取出值*x *y; // 去 y 的房间把值搬到 x 的房间*y temp;}// 调用swap(a, b); ← 传的是地址一句话总结 值传递 把文件复印一份给你你在复印件上改 指针 把文件柜的钥匙给你你开柜子改原件2.4 指针与数组cint arr[5] {10, 20, 30, 40, 50};// 下面三种方式完全等价arr[2] // 下标访问 → 30*(arr 2) // 指针偏移 → 30*(arr[0] 2) // 从首地址偏移 → 30// 数组名 arr 就是 arr[0]是首元素的地址2.5 指针算术cint *p arr;p 1 → 下一个 int 的位置实际地址 4 字节因为 int 占 4 字节p → p 指向下一个元素p n → p 指向后面第 n 个元素三、阅读任务80分钟《C Primer Plus 第6版》第10章| 章节 | 内容 | 重点 ||------|------|------|| §10.4 | 指针简介 | ★★★ || §10.5 | 指针运算符 和 * | ★★★ || §10.6 | 指针与数组 | ★★★ || §10.7 | 指针运算 | ★★★ |阅读方法放慢速度。每看到一个指针例子先在纸上画出内存图再往下看。指针不是看懂的是画懂的。四、动手练习60分钟练习1指针基本操作bashgcc ex1_pointer_basics.c -o ex1_pointer_basics.exe./ex1_pointer_basics.exe必做在纸上画出变量 a 和指针 p 的内存关系图。标注地址、值、箭头指向关系。这张图要自己画不要只看代码。练习2真正的 swap ★★★bashgcc ex2_swap_real.c -o ex2_swap_real.exe./ex2_swap_real.exe这是今天最重要的练习。运行完后1. 找出第8天 day08/ex3_swap_fail.c再跑一遍2. 对比两个程序的输出3. 在纸上画出两个 swap 版本的内存图感受传值和传地址的本质区别如果只做一个练习就做这个。搞懂了今天的 swap指针就入门了。练习3指针数组遍历bashgcc ex3_pointer_array.c -o ex3_pointer_array.exe./ex3_pointer_array.exe比较三种遍历方式注意观察 p1 的地址比 p 多了多少应该刚好是一个 int 的字节数。五、自由实验30分钟实验1用指针实现 strlen不调用 string.h用指针实现计算字符串长度cint my_strlen(const char *str){const char *p str;while (*p ! \0)p;return p - str; // 指针相减 元素个数}实验2用指针实现选择排序把第9天的选择排序改成指针版本用指针而非下标遍历。六、今日自检- [ ] 能说清楚 int *p a; 中 int*、p、a 分别是什么- [ ] 能说清楚 *p 是什么解引用顺着地址访问值- [ ] 能解释第8天的 swap 为什么失败今天的 swap 为什么成功- [ ] 知道 arr[i] 和 *(arri) 是等价的- [ ] 知道 p1 跳过几个地址取决于指针的类型- [ ] 三个练习全部运行成功七、明天预告第11天字符串 — 本质上就是字符指针学完指针再看字符串会豁然开朗。

相关新闻

GAMES101: Lecture 16: Ray Tracing 4 (Monte Carlo Path Tracing) ppt笔记

GAMES101: Lecture 16: Ray Tracing 4 (Monte Carlo Path Tracing) ppt笔记

Monte Carlo Integration 计算复杂的定积分时,通过随机采样的函数值的平均值估计该函数的定积分 对于函数f(x)f(x)f(x)的积分∫abf(x) dx\int_a^b f(x) \, dx∫ab​f(x)dx,其蒙特卡洛积分表示为 1N∑i1Nf(Xi)p(Xi) \frac{1}{N} \sum_{i1}^N \frac{f(X_i…

2026/8/2 6:14:51阅读更多 →
JS逆向入门:从黑猫投诉平台sign参数破解到Python爬虫实战

JS逆向入门:从黑猫投诉平台sign参数破解到Python爬虫实战

1. 从“请求失败”到“参数逆向”:一个爬虫工程师的日常今天想聊一个几乎所有爬虫工程师都会遇到的经典场景:你兴致勃勃地打开一个网站,打开开发者工具,准备像往常一样复制请求头、提取接口URL,却发现数据根本不在你熟…

2026/8/2 6:14:51阅读更多 →
Labelme JSON转Mask:语义分割数据预处理核心技术与实战

Labelme JSON转Mask:语义分割数据预处理核心技术与实战

1. 项目概述:从标注文件到像素级掩码的转换在计算机视觉,特别是语义分割任务中,我们经常遇到一个看似简单却至关重要的环节:如何将标注工具(如Labelme)生成的JSON文件,转换成模型训练所需的Mask…

2026/8/2 6:14:51阅读更多 →
长春中央空调维修-欧米到家金牌师傅全城区30分钟火速上门覆盖南关/朝阳/宽城/二道/绿园等全域各区 专治不制冷/漏水/异响/跳闸

长春中央空调维修-欧米到家金牌师傅全城区30分钟火速上门覆盖南关/朝阳/宽城/二道/绿园等全域各区 专治不制冷/漏水/异响/跳闸

在长春,中央空调突发故障是家庭、商铺与写字楼的高频烦心事——中央空调不制冷、内机漏水、外机异响跳闸、开机没反应等问题,往往在盛夏高温、寒冬低温时集中爆发。很多用户会搜索“长春中央空调维修”“长春附近中央空调上门师傅”“长春中央空调漏水维…

2026/8/2 7:35:14阅读更多 →
从“中二”AI项目拆解Agent部署:LangChain实战与工程化避坑指南

从“中二”AI项目拆解Agent部署:LangChain实战与工程化避坑指南

如果你是一位开发者,最近在关注AI应用开发,特别是那些能够快速构建、灵活部署的智能体(Agent)项目,那么你很可能已经注意到了GitHub上涌现出的各种“XX-Ask”或“XX-Agent”项目。它们往往标榜着“开箱即用”、“功能强…

2026/8/2 7:35:14阅读更多 →
石家庄中央空调维修-欧米到家金牌师傅全城区30分钟火速上门覆盖长安/桥西/新华/裕华等全域各区 专治不制冷/漏水/异响/跳闸

石家庄中央空调维修-欧米到家金牌师傅全城区30分钟火速上门覆盖长安/桥西/新华/裕华等全域各区 专治不制冷/漏水/异响/跳闸

在石家庄,中央空调突发故障是家庭、商铺与写字楼的高频烦心事——中央空调不制冷、内机漏水、外机异响跳闸、开机没反应等问题,往往在盛夏高温时集中爆发。很多用户会搜索“石家庄中央空调维修”“石家庄附近中央空调上门师傅”“石家庄中央空调漏水维修…

2026/8/2 7:35:14阅读更多 →
手握“金钥匙”:市场岗位证书如何有效撬动个人收入增长?

手握“金钥匙”:市场岗位证书如何有效撬动个人收入增长?

引言:在不确定性中寻找确定性在当今快速变化、竞争激烈的市场环境中,个人职业发展面临着前所未有的挑战与机遇。学历的“敲门砖”作用正在被重新定义,而能够直接证明专业能力、与市场需求紧密挂钩的岗位证书,正成为职场人提升个人…

2026/8/2 7:35:14阅读更多 →
东莞中央空调维修-欧米到家金牌师傅全城区30分钟火速上门覆盖东城/南城/虎门/长安等全域各镇街 专治不制冷/漏水/异响/跳闸

东莞中央空调维修-欧米到家金牌师傅全城区30分钟火速上门覆盖东城/南城/虎门/长安等全域各镇街 专治不制冷/漏水/异响/跳闸

在东莞,中央空调突发故障是家庭、商铺与写字楼的高频烦心事——中央空调不制冷、内机漏水、外机异响跳闸、开机没反应等问题,往往在盛夏高温时集中爆发。很多用户会搜索“东莞中央空调维修”“东莞附近中央空调上门师傅”“东莞中央空调漏水维修电话”寻…

2026/8/2 7:35:14阅读更多 →
Claude 5传闻背后:AI编程模型能力评估与智能体工程化实践

Claude 5传闻背后:AI编程模型能力评估与智能体工程化实践

1. 从“史诗级泄露”到理性审视:Claude 5传闻的真相与价值最近几天,AI圈子里关于“Claude 5史诗级泄露”的消息传得沸沸扬扬,各种截图、评测数据满天飞,标题一个比一个炸裂,什么“史上最强编程模型”、“评测炸裂”、“…

2026/8/2 7:33:13阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/2 0:00:10阅读更多 →
限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

更多请点击: https://intelliparadigm.com 第一章:AI模板批量生成的核心价值与落地全景 AI模板批量生成正从实验性工具演进为现代软件工程的关键基础设施。它通过语义理解、上下文感知与结构化约束,将重复性高、模式明确的代码/文档/配置生成…

2026/8/2 0:00:12阅读更多 →
如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南 【免费下载链接】web-archives Browser extension for viewing archived and cached versions of web pages, available for Chrome, Edge and Safari 项目地址: https://gitcode.com/gh_mirrors/we/web-a…

2026/8/2 0:00:13阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/2 0:00:10阅读更多 →
限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

更多请点击: https://intelliparadigm.com 第一章:AI模板批量生成的核心价值与落地全景 AI模板批量生成正从实验性工具演进为现代软件工程的关键基础设施。它通过语义理解、上下文感知与结构化约束,将重复性高、模式明确的代码/文档/配置生成…

2026/8/2 0:00:12阅读更多 →
如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南 【免费下载链接】web-archives Browser extension for viewing archived and cached versions of web pages, available for Chrome, Edge and Safari 项目地址: https://gitcode.com/gh_mirrors/we/web-a…

2026/8/2 0:00:13阅读更多 →
无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南:如何实现快速高效的多媒体处理 【免费下载链接】lossless-cut The swiss army knife of lossless video/audio editing 项目地址: https://gitcode.com/gh_mirrors/lo/lossless-cut 在数字媒体创作领域,视频编辑处理的质量损…

2026/8/2 1:29:34阅读更多 →
AI辅助本科论文写作:8大工具评测与高效使用指南

AI辅助本科论文写作:8大工具评测与高效使用指南

1. 本科生论文写作的AI辅助现状本科毕业论文是每个大学生必须跨越的一道坎。记得我当年写论文时,光是文献检索就花了整整两周时间,打印的参考文献堆满了半个书桌。如今AI技术的发展为学术写作带来了革命性变化,合理使用这些工具可以节省80%以…

2026/8/2 2:32:55阅读更多 →
如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手 【免费下载链接】ticket-purchase 大麦自动抢票,支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 还在为抢不到热门演唱会门票…

2026/8/2 2:09:20阅读更多 →