C语言进阶——数组(2)
昨天我们学习了一维整形数组的有关知识今天我们学习一维字符数组与二维数组。知识点如下分享给正在入门C语言的小伙伴。一、一维字符型数组C语言里面没有专门的字符串类型我们平时操作字符串全部依靠字符型数组实现这是一个关键点。字符数组基础定义格式char 数组名[元素个数];这里要注意方括号里的元素个数必须是常量不能用变量数组容量一定要留足空间字符串末尾自带结束符’\0’存储字符串时需要多占用1个位置存放它。定义示例char str[20];可以通过下标单独访问每一个字符str[0]、str[1]……存储空间大小区分char str[20];数组占用空间 数组元素总个数。我们可以用 sizeof(a)/sizeof(a[0]) 计算数组一共拥有多少个元素。但是sizeof 和后面会提到的strlen完全不是一个东西不可混淆。字符数组初始化初始化不等于赋值数组定义完成后不能直接写 str“hello”。几种合法初始化方式1. 完整初始化char str[6]{‘h’,‘e’,‘l’,‘l’,‘o’,‘\0’};char str[6]{“hello”};char str[6]“hello”;2. 局部初始化没有手动赋值的元素系统会自动初始化为0也就是等价于’\0’。char str[6]{‘h’,‘e’,‘l’};3. 默认初始化char str[]“hello”;其中默认初始化日常练习可以用但正式代码不推荐。注意0数字零‘\0’字符串结束符ASCII值等价于0‘0’字符0ASCII值是48三者千万不要混淆字符串输出printf(“%s”, str);puts(str);puts打印字符串之后会自动额外输出一个换行符。字符串接收输入scanf(“%s”, str);遇到空格就停止读取不能接收带空格的句子。gets(str);是危险函数编译器会警告存在缓冲区溢出风险尽量少使用。字符串常用操作库函数使用这些函数需要引入头文件 string.hstrlen() — 获取字符串有效长度从开头计数直到遇见’\0’不包含结束符。strcpy() — 字符串拷贝strcpy(str,“hello world”);目标数组空间必须足够大能够放下完整字符串否则发生越界。strcat() — 字符串拼接strcat(str1,str2);把str2接到str1末尾str1剩余空间要足够容纳拼接后的全部字符。strcmp() — 字符串比较ret strcmp(str1,str2);规则从左向右逐个对比字符ASCII码返回 0两个字符串完全相等返回 0str1大于str2返回 0str1小于str2不能直接用 判断两个字符串是否相等这是新手高频错误。二、二维整型数组定义格式int 数组名[行数][列数];int a[2][3];行数、列数都必须是常量。访问方式a[0][0]、a[0][1]、a[1][0]存储规则二维数组在内存里逐行连续存放。可以简单理解二维数组就是由多个一维数组组成的数组。初始化全部初始化int a[2][3]{1,2,3,4,5,6};int a[2][3]{{1,2,3},{4,5,6}};局部初始化未赋值元素自动初始化为0int a[2][3]{1,2,3,4};省略行数初始化注意行可以省略列绝对不能省略int a[][3]{1,2,3,4,5,6};看到这里今天的内容就已经结束了。我想提醒大家一维字符数组是现阶段的重中之重C语言字符串所有操作都建立在它之上。

相关新闻

AI学术写作助手:提升论文效率与规范性的关键技术

AI学术写作助手:提升论文效率与规范性的关键技术

1. 项目概述:AI如何重塑学术写作体验 第一次听说"书匠策AI"这个工具时,我正在熬夜修改一篇被期刊打回的论文。那种反复调整格式、核对引用、重写摘要的折磨,相信每个科研工作者都深有体会。这款专为学术写作设计的智能助手&#xf…

2026/10/15 0:43:10 阅读更多 →
GitHub热榜技术解析:AI工具链、Rust全栈与分布式数据库新趋势

GitHub热榜技术解析:AI工具链、Rust全栈与分布式数据库新趋势

1. GitHub热榜项目解析:2026年3月14日精选作为全球最大的开源代码托管平台,GitHub每日热榜总能反映技术社区的最新动向。2026年3月14日的榜单呈现出几个明显趋势:AI工具链项目持续霸榜,开发者效率工具出现新形态,而Web…

2026/10/15 20:32:21 阅读更多 →
MySQL INSERT 导致的死锁分析

MySQL INSERT 导致的死锁分析

MySQL INSERT 导致的死锁分析 在MySQL的并发事务处理中,死锁是一个常见且棘手的问题。许多开发者认为死锁只会在 UPDATE 或 DELETE 操作中发生,但实际上 INSERT 语句也能导致死锁。本文将从原理出发,深入剖析INSERT导致死锁的机制&#xff0c…

2026/10/15 11:31:44 阅读更多 →

最新新闻

双目立体匹配核心:区域匹配算法原理与工程实践

双目立体匹配核心:区域匹配算法原理与工程实践

双目立体匹配这个话题,我在实际项目里断断续续折腾了好几年。如果让我给刚接触三维视觉的人推荐一个最值得先吃透的算法,我大概率会推荐区域匹配(Area-based Matching)——它是局部匹配算法里最直观、最容易编码、也是整条计算链路…

2026/10/15 20:32:08 阅读更多 →
Codesys 3.5 PLC的TcpSocket通信实战:从封装到避坑

Codesys 3.5 PLC的TcpSocket通信实战:从封装到避坑

写工业PLC的TCP通信,最容易踩的坑就是:开发环境里跑得通,一上产线就丢包、死连接、数据错位。这问题我在多个现场都遇到过,尤其是用Codesys 3.5做Socket通信时,坑特别深。这平台本身功能很全,但很多工程应用…

2026/10/15 20:32:08 阅读更多 →
DeepSeek-Agent-Harness-2026终极指南-第2章第9节-认知升级-五分钟体验:用TaoToken跑通你的第一个DeepSeek回合

DeepSeek-Agent-Harness-2026终极指南-第2章第9节-认知升级-五分钟体验:用TaoToken跑通你的第一个DeepSeek回合

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

2026/10/15 20:32:08 阅读更多 →
Tautulli 版本演进全解析:从 PlexPy v1.0 到 v2.18.2 的功能迭代与安全加固路线图

Tautulli 版本演进全解析:从 PlexPy v1.0 到 v2.18.2 的功能迭代与安全加固路线图

后端数据可视化运维 【免费下载链接】Tautulli A Python based monitoring and tracking tool for Plex Media Server. 项目地址: https://gitcode.com/gh_mirrors/ta/Tautulli 点击查看 免费下载 Tautulli(前身 PlexPy)是一款基于 Python 的…

2026/10/15 20:32:08 阅读更多 →
WHartTest架构全景图:Django+Vue+MCP+Skills五大组件如何协同工作的完整指南

WHartTest架构全景图:Django+Vue+MCP+Skills五大组件如何协同工作的完整指南

人工智能AI 应用测试质量保障后端前端RAGAI Agent 【免费下载链接】WHartTest WHartTest 是一款AI驱动的测试自动化平台,实现从需求到可执行测试用例的自动化生成与管理,帮助测试团队提升效率与覆盖率。 (WHartTest is an AI-driven test automation pla…

2026/10/15 20:32:08 阅读更多 →
单电阻无感FOC实战:电流重构与观测器参数整定避坑指南

单电阻无感FOC实战:电流重构与观测器参数整定避坑指南

简介:AN5327应用笔记面向汽车电子与电机控制方向的嵌入式开发者,聚焦3相无传感器单分流电流感应永磁同步电机(PMSM)矢量控制驱动设计,基于NXP专为电机控制打造的MC9S12ZVM器件,提供一套兼顾成本与性能的解决…

2026/10/15 20:31:06 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 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/15 0:14:36 阅读更多 →
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/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练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/15 9:49:14 阅读更多 →