第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/31 20:30:57 阅读更多 →
新能源并网中同步电机与构网型变流器的频率稳定性研究

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

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

2026/11/5 1:05:37 阅读更多 →
如何在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/11/6 0:31:56 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/6 15:21:35 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/7 12:08:40 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/6 22:01:11 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/6 22:01:11 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/7 12:08:40 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/6 22:01:09 阅读更多 →

日新闻

周新闻

月新闻