一般使用字符串时可能需要达到以下几个目的,1获得字符串的长度 2把一个字符串的内容复制到另一个字符串 3把一个字符串内容拼接到另一个字符串 。这些操作如何实现呢首先使用字符串相关函数要加上头文件(#includestring.h)一获取字符串长度1下面是手搓获取字符串长度的代码通过一个循环累加字符的个数#includestdio.h int main(void) { char str[10]; printf(str ); gets(str); int len 0; while(str[len] ! \0) //获取字符串有效长度截至到结束符 { len; } printf(while计算长度 %d\n, len); return 0; }2接下来引进一个函数的使用即strlen以下是它的介绍3,具体使用的代码如下可以直接获取字符串的有效长度。举例假设cnt strlen(str1) cnt是有效字符数量不含 \0 看下面代码strlen(str)直接表示有效字符数不含\0#includestdio.h #includestring.h int main(void) { char str[10]; printf(str ); gets(str); size_t len strlen(str); printf(strlen得到长度 %zu\n, len); return 0; }二复制一个字符串的内容到另一个字符串1下面是手搓复制字符串的代码通过一个循环复制每一个字符#include stdio.h int main(void) { char s1[] hello; char s2[20]; int i 0; while(s1[i] ! \0) { s2[i] s1[i]; i; } s2[i] \0; //因为前面复制的每个字符都是有效字符所以要这一步补上结束符号 printf(s2 %s\n, s2); return 0; }2,接下来引进一个函数的使用即strlen以下是它的介绍3,使用情况如下#include stdio.h #include string.h int main(void) { char str1[] hello; char str2[10]; strcpy(str2, str1); puts(str2); return 0; }三拼接一个字符串的内容到另一个字符串后面1下面是手搓拼接字符串的代码通过一个循环拼接每一个字符#include stdio.h #include string.h int main(void) { char str1[20] hello; char str2[] world; int cnt strlen(str1); //把str1的长度赋值给cnt int i 0; for(i; i strlen(str2); i) { str1[cnt i] str2[i]; //从str1的\0位置开始覆盖为str2的字符 } str1[cnt i] \0; //最后给拼接后的字符串加上结束符 puts(str1); return 0; }2,接下来引进一个函数的使用即strlen以下是它的介绍3,使用情况如下#include stdio.h #include string.h int main(void) { char str1[20] hello; //拼接操作要保证被拼接的数组足够长以保证不越界 char str2[] world; strcat(str1,str2); //后面的字符串被拼到前面的字符串之后 puts(str1); return 0; }四字符间比大小的规则如遇到“hello”和“hell”这时候“hell”已经停了因为最终比的结果是停了的位置上的两个字符的大小所以是o和“\0”比较比较停止的条件即s1[i] ! s2[j] || s1[i] \0 || s2[j] 0比较结果规则1以下是手搓比较字符串大小的代码#include stdio.h int main(void) { char str1[] hello; char str2[] hell; int i 0, j 0; while(str1[i] ! \0 str2[j] ! \0 str1[i] str2[j]) //判断条件也可以都反过来但是就要用||了 { i; j; } if(str1[i] str2[j]) { printf(%s %s\n,str1,str2); } else { printf(%s %s\n,str1,str2); } return 0; }2以下是用函数比大小的代码#include stdio.h #include string.h int main(void) { char s1[10]; char s2[10]; printf(shuru ); gets(s1); printf(shuru ); gets(s2); printf(return %d,strcmp(s1,s2)); //输出的结果是s1那个字符与s2不同的字符间的阿西科玛差值 return 0; }五整型二维数组二维数组是包含关系一个二维数组看成一个特别的一维数组这个一维数组的每一个元素都是一个数组例如C语言二维数组 int a[3][4] 可以看成a 是一维数组一共有3个元素每一个元素本身又是一个长度为4的一维数组二维数组的不同初始化情况六字符型二维数组一维字符型数组里每个元素是一个字符整个数组是一个字符串二维字符型数组里每个元素是一个一维字符型数组(即一个字符串)二维数组打印字符串只要外层数组就好了如果加上内层就是打印那个字符串里的某个字符看下面代码#include stdio.h int main(void) { char s[5][10] {hello,world,china,english,america}; //printf(s[0] %s\n,s[0]); //printf(s[0][0] %c\n,s[0][0]); int i; for (i 0; i 5; i) { printf(s[%d] %s\n,i,s[i]); } return 0; }这是二维字符数组每一行存一个字符串。打印结果如下s[0] hellos[1] worlds[2] chinas[3] englishs[4] america
企业数字化 ERP 产品动态
相关推荐
投资分析师的真实工作:从信息过滤到决策落地的完整链路 从收到“投资分析师”这个职业关键词开始,我就一直在想该怎么把这篇内容写出来。因为这个岗位被误解得太深了。外面流传最广的印象,要么是影视剧里穿着定制西装、盯着六块屏幕指点江山的人,要么是社交媒体上天天喊“涨了涨了”的荐股博主。我… · 2026/9/23 23:30:45
Play Framework 2.5 迁移指南:从 2.4 升级的完整实战手册与源码级解析 后端Web框架 【免费下载链接】playframework The Community Maintained High Velocity Web Framework For Java and Scala. 项目地址: https://gitcode.com/gh_mirrors/pl/playframework 点击查看 免费下载 Play Framework 2.5 是一次以「去全局状态、拥抱 Java 8、… · 2026/9/23 23:30:45
Building Production AI Agents:从原型到生产部署的完整工程化指南 人工智能AI Agent多智能体MCP 服务工具调用浏览器控制 【免费下载链接】hive Multi-Agent Harness for Production AI 项目地址: https://gitcode.com/gh_mirrors/hive48/hive 点击查看 免费下载 A practical guide to taking AI agents from demo to production 让… · 2026/9/23 23:30:39
XDF文件怎么读?用pyxdf轻松解析LSL多模态数据 说实话,我第一次拿到.xdf后缀的文件时,整个人是懵的:双击打不开,拖进Excel直接报错,用文本编辑器打开满屏乱码。搞脑电、做多模态生理信号采集的朋友应该都有共鸣——设备采集完数据,导出的正是XDF格式&… · 2026/9/24 0:13:47
iView表格分页实战:Table与Page组合的完整实现方案 做了这么多年后台管理系统,表格分页这活儿真的是躲不开也绕不过去。不管你是用iView、Element还是Ant Design,数据一多,表格分页就是刚需。我早期带团队的时候,见过太多新手在iView里把Table和Page各自用得挺溜,但一到… · 2026/9/24 0:13:47
配电网动态重构与分布式光伏消纳:多目标优化模型与IEEE 33节点算例解析 简介:面向电力系统与分布式光伏领域的研究人员、工程师及高年级学生,这份资源是一篇题为《基于配电网动态重构的分布式光伏消纳策略》的学术论文PDF。内容针对光伏出力的间歇性与波动性,综合考虑负荷变化、出力不确定性和开关切换次数&#x… · 2026/9/24 0:13:41
Cesium地形开挖实战:裁剪平面原理、代码实现与避坑指南 简介:面向Cesium初学者与前端开发者的地形开挖示例包,通过单个HTML文件完整演示了基于Cesium的三维地形开挖核心实现。压缩包内仅含1个HTML文件,大小仅1KB,代码集中,可直接在浏览器中运行,适合作为入门模板… · 2026/9/24 0:13:34
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程 简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13
1D-CNN时间序列建模实战:从Conv1d原理到工业落地 简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26
柔软的L:汉语语流中被忽视的舌肌张力控制 1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44