第11天:字符串 — 操作指南
小白记录日常学习一、今日任务总览| 步骤 | 内容 | 时间 ||------|------|------|| ① | 阅读教材第4章 §4.1-4.3 第11章 §11.1-11.3 | 60分钟 || ② | 理解字符串在内存中的样子 | 20分钟 || ③ | 手打并运行3个练习 | 50分钟 || ④ | 自由实验 | 30分钟 |二、今日核心知识点2.1 字符串的本质C 语言没有专门的字符串类型。字符串就是一个以 \0 结尾的 char 数组。char name[] AB;内存name[0] Aname[1] Bname[2] \0 ← C 自动加上的标志字符串在这里结束strlen(AB) 2 ← 数到 \0 之前有几个字符sizeof(AB) 3 ← 包括隐式的 \02.2 字符串与指针学完指针第10天再看字符串一切变简单了cchar *p Hello; // p 指向字符串首字符 H*p → H // 首字符*(p1) → e // 下一个字符*(p4) → o // 第5个字符*(p5) → \0 // 结束符遍历字符串的标准写法cwhile (*p ! \0){printf(%c, *p);p;}2.3 常用字符串函数string.h| 函数 | 作用 | 例子 ||------|------|------|| strlen(s) | 返回长度不含 \0 | strlen(Hi) → 2 | string length| strcpy(dst, src) | 把 src 复制到 dst | strcpy(a, b) | string copy| strcmp(a, b) | 比较两个字符串 | 相等返回 0ab 返回负数 | string compare| strcat(dst, src) | 把 src 拼接在 dst 后面 | strcat(s, !) | string concatenate2.4 fgets 代替 getsc// gets(str); ← 危险可能溢出C11已移除char str[100];fgets(str, sizeof(str), stdin); // ★ 安全限制了最大读取长度// 注意fgets 会保留末尾的换行符 \n如果不需要手动去掉str[strcspn(str, \n)] \0;2.5 字符分类函数ctype.h| 函数 | 判断的是什么 ||------|-------------|| isupper(c) | 大写字母 A-Z || islower(c) | 小写字母 a-z || isdigit(c) | 数字 0-9 || isspace(c) | 空白字符空格、\t、\n || isalpha(c) | 字母大小写都算 | alphabetical三、阅读任务60分钟| 章节 | 内容 | 重点 ||------|------|------|| §4.1-4.3 | 字符串入门、strlen、常量和预处理器 | ★★★ || §11.1 | 字符串与字符串函数 | ★★★ || §11.2 | 字符串输入 | ★★ || §11.3 | 字符串输出 | ★★ |四、动手练习50分钟练习1自己实现 strlenbashgcc ex1_strlen.c -o ex1_strlen.exe./ex1_strlen.exe重点对比strlen() 和 sizeof() 的返回值差 1。练习2字符串统计bashgcc ex2_string_stats.c -o ex2_string_stats.exe./ex2_string_stats.exe输入一个带大小写字母和数字的字符串如 Hello2026 World观察统计结果。练习3字符串反转双指针bashgcc ex3_reverse_string.c -o ex3_reverse_string.exe./ex3_reverse_string.exe纸上追踪画出 ABCD 反转时每一轮 left 和 right 的变化。五、自由实验30分钟实验1判断回文写一个函数判断字符串是否为回文正读反读一样如 level。用第10天学的双指针。实验2大小写转换输入一个字符串把所有大写字母转小写小写转大写。六、今日自检- [ ] 知道字符串 \0 结尾的 char 数组- [ ] 能区分 strlen 和 sizeof- [ ] 知道为什么要用 fgets 而不是 gets- [ ] 能自己写 strlen 函数- [ ] 三个练习全部运行成功七、明天预告第12天全面复习 10道综合练习题— 独立写代码不看书。

相关新闻

电商库存补偿机制:MySQL事务与PHP实现方案

电商库存补偿机制:MySQL事务与PHP实现方案

1. 问题背景与场景还原 上周处理电商系统退货单时,遇到个典型场景:用户退回3件商品,系统显示入库成功但库存数量未更新。这种"幽灵库存"问题在促销季高频出现,直接影响后续销售和库存盘点。我们用的是PHPMySQL的经典架构…

2026/10/13 11:48:12 阅读更多 →
新能源并网中同步电机与构网型变流器的频率稳定性研究

新能源并网中同步电机与构网型变流器的频率稳定性研究

1. 项目背景与核心问题电力系统中同步电机与构网型变流器的频率稳定性研究,是新能源并网领域的关键技术挑战。随着可再生能源渗透率不断提高,传统同步发电机占比下降,系统惯性降低导致频率调节能力减弱。构网型变流器(Grid-Formin…

2026/10/7 11:32:38 阅读更多 →
如何在Windows上彻底移除Microsoft Edge:EdgeRemover终极卸载指南

如何在Windows上彻底移除Microsoft Edge:EdgeRemover终极卸载指南

如何在Windows上彻底移除Microsoft Edge:EdgeRemover终极卸载指南 【免费下载链接】EdgeRemover A PowerShell script that correctly uninstalls or reinstalls Microsoft Edge on Windows 10 & 11. 项目地址: https://gitcode.com/gh_mirrors/ed/EdgeRemove…

2026/10/5 5:06:46 阅读更多 →

最新新闻

MyBatis二级缓存源码深度解析:生命周期、装饰器链与五大致命坑

MyBatis二级缓存源码深度解析:生命周期、装饰器链与五大致命坑

1. 为什么你改了SQL却没刷新缓存?——从一个线上故障说起上周五下午三点,某电商后台订单查询接口响应时间突然从80ms飙升到1200ms,监控告警连响三轮。运维同学第一时间拉出慢SQL日志,发现执行计划里多了一堆SELECT * FROM order_i…

2026/10/13 11:47:23 阅读更多 →
AI Agent实战:家居高潜流失用户挽回,下单率提升104%

AI Agent实战:家居高潜流失用户挽回,下单率提升104%

做家居行业的用户增长,有个特别拧巴的场景:你手里明明握着一批高潜流失顾客,销售跟过了、优惠给过了、直播也邀请过,可他们就是不动。后来我们把AI Agent接进了这条挽回链路,才把问题真正跑通。这个项目里,…

2026/10/13 11:47:23 阅读更多 →
C++ set/multiset 底层红黑树:内存、迭代器与性能实战剖析

C++ set/multiset 底层红黑树:内存、迭代器与性能实战剖析

几个月前我在优化模拟项目X的排行榜模块时,遇到一个诡异现象:内存占用随着在线人数持续增长,插入同样数量数据的耗时也不断拉高。一开始我怀疑是业务代码里对象拷贝太狠,后来把热点路径上的std::vector std::sort换成了std::mult…

2026/10/13 11:47:23 阅读更多 →
Farming Code 架构解析:Language Server 与 Browser Use 如何支撑 Agent 持续耕作

Farming Code 架构解析:Language Server 与 Browser Use 如何支撑 Agent 持续耕作

1. 从 "Farming Code" 这个名字说起:它到底在解决什么问题第一次看到 "Farming Code" 这个标题,很多人会以为是某种游戏外挂或者自动化脚本合集。但结合 agent、Language Server、Browser Use、Computer Use 这几个关键词来看&#…

2026/10/13 11:47:23 阅读更多 →
CrashData:R语言清洗航空事故数据的完整实践指南

CrashData:R语言清洗航空事故数据的完整实践指南

简介:CrashData 是一份面向数据分析与航空安全研究者的 R 语言数据采集脚本资源,用于从 planecrashinfo.com 逐年抓取飞机失事的历史记录,解决公开事故数据分散、难以批量获取的问题。作者以略显取巧但可用的方式将网页内容整理为规整的 data…

2026/10/13 11:47:23 阅读更多 →
高德地图校园导航Android项目实战:从Key配置到路线规划全解析

高德地图校园导航Android项目实战:从Key配置到路线规划全解析

简介:这份基于高德地图的校园导航资源,是面向在校学生与初学者的完整项目包,适用于课程设计、毕业设计或项目初期演示。包内提供可直接运行的Android工程与APK安装包,涵盖Java源码、XML布局与配置、Gradle构建脚本及多个SO库&…

2026/10/13 11:46:22 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 14:48:49 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →