字符串相关函数

news2024/9/22 3:57:16

文章目录

  • 🍊自我介绍
  • 🍊strcpy 字符串拷贝函数
  • 🍊strcat 字符串连接函数
  • 🍊strlen 字符串长度计算函数
  • 🍊strcmp 字符串比较函数


你的点赞评论就是对博主最大的鼓励
当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~


🍊自我介绍

  Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群一名“创始团队·嘉宾” ,现在我来为大家介绍一下有关嵌入式方面的内容。在进入介绍之前,可能有一些小伙伴不了解易编程·终身成长社群;想要进一步了解社群的小伙伴可以点击下方链接自行跳转至关于社群的介绍:

易编程·终身成长社群介绍 :
https://blog.csdn.net/weixin_74300052?spm=1011.2266.3001.5343

在这里插入图片描述


  在学习字符串函数之前我们要认识以下它们的头文件:

#include <string.h>

🍊strcpy 字符串拷贝函数

strcpy(char dest[],char src[]);
功能:
	把src数组中'\0'之前的所有字符,连同'\0'一起拷贝到dest中去。要求在定义dest的时候,空间足够大。
参数:
	dest  目标数组;
	src   源数组---[元素首地址或者字符串]

例如:
	char buf[20] = {0};
	strcpy(buf,"hello");
	printf("buf = %s\n",buf);//buf = hello

如果原来的数组里面有字符串则有下面这种拷贝情况:

	buf[20] = {'h','e','l','l','o','\0'};
	strcpy(buf,"QQ");
buf数组里面的情况如下:
	buf[20] = {'Q','Q','\0','l','o','\0'};

🍊strcat 字符串连接函数

strcat(char dest[],char src[]);
功能:
	把src数组'\0'之前的字符串追加到dest字符串后,若是dest中有'\0',会把dest中的'\0'给覆盖掉,然后新组成的dest字符串后面会重新添加'\0'
参数:
	dest    目标函数;
	src     源数组---[字符数组或字符串]
例如:
	char buf[] = "hello";
	strcat(buf," world!");//buf<===>"hello world!"

🍊strlen 字符串长度计算函数

int strlen(char s[]);
功能:
	计算s数组中第一个'\0'前字符的个数,并返回
参数:
	s    目标数组,存放字符串
例如:
	char buf[] = "hello";

	int len = strlen(buf);
	
	printf("len = %d\n",len);//len = 5

🍊strcmp 字符串比较函数

int strcmp(char s1[],char s2[]);
功能:
 	对s1和s2字符串中的每个字符逐个比较,
 	若是s1中某个字符>s2中的某个字符,则返回大于0的数
 	若是s1中某个字符<s2中的某个字符,则返回小于0的数;
 	若是当前s1和s2中的字符相等,则比较后一个字符。若是完全相等,返回0

参数:
	待比较的数组s1    [字符串或字符数组]
	待比较的数组s2    [字符串或字符数组]

返回值(32位编译器下):
若是s1 > s2,返回1
若是s1 == s2,返回0
若是s1 < s2,返回-1

例子:
char buf1[] = "hello";
char buf[2] = "heltt";
ret = strcmp(buf1,buf2);//在32位编译器下得到的是-1;在64位编译器下得到的是-8(是 l的对应的ASCII值减去t 的ASCII值)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1977167.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++ | Leetcode C++题解之第318题最大单词长度乘积

题目&#xff1a; 题解&#xff1a; class Solution { public:int maxProduct(vector<string>& words) {unordered_map<int,int> map;int length words.size();for (int i 0; i < length; i) {int mask 0;string word words[i];int wordLength word.s…

[Git][基本操作]详细讲解

目录 1.创建本地仓库2.配置 Git3.添加文件1.添加文件2.提交文件3.其他 && 说明 4.删除文件5.跟踪修改文件6.版本回退7.撤销修改0.前言1.未add2.已add&#xff0c;未commit3.已add&#xff0c;已commit 1.创建本地仓库 创建⼀个Git本地仓库&#xff1a;git init运行该命…

模型 ESBI(财富四象限)

系列文章 分享 模型&#xff0c;了解更多&#x1f449; 模型_思维模型目录。财富自由之路的4个阶段。 1 ESBI模型的应用 1.1 一名工程师的财富自由之路 有一个名叫张伟的软件工程师&#xff0c;他在一家大型科技公司工作&#xff08;E象限&#xff09;。随着时间的推移&#…

模型量化技术综述:揭示大型语言模型压缩的前沿技术

大型语言模型&#xff08;LLMs&#xff09;通常因为体积过大而无法在消费级硬件上运行。这些模型可能包含数十亿个参数&#xff0c;通常需要配备大量显存的GPU来加速推理过程。 因此越来越多的研究致力于通过改进训练、使用适配器等方法来缩小这些模型的体积。在这一领域中&am…

electron-updater实现electron全量更新和增量更新——渲染进程交互部分

同学们可以私信我加入学习群&#xff01; 正文开始 前言更新功能所有文章汇总一、监听页面渲染完毕1.1 myApi.handleCheckPcUpdate检查更新1.2myApi.onPcUpdateProgress接收下载信息1.3myApi.onPcDownloaded监听下载完毕事件 二、立即更新三、跳过更新四、打开更新模块总结 前言…

打卡第32天------动态规划

坚持了一个月了,骑马找马,要坚持不懈呀✊ 一、动态规划理论基础 1、什么是动态规划?英文:Dynamic Programming,简称DP。 如果某一问题有很多重叠子问题,使用动态规划是最有效的。 所以动态规划中每一个状态一定是由上一个状态推导出来的,这一点就区分于贪心,贪心没有…

JVM—虚拟机类加载时机与过程

参考资料&#xff1a;深入理解Java虚拟机&#xff1a;JVM高级特性与最佳实践&#xff08;第3版&#xff09;周志明 1. 类加载的时机 一个类型从被加载到虚拟机内存开始&#xff0c;到卸载出内存为止&#xff0c;它的生命周期会经历加载、验证、准备、解析、初始化、使用、卸载…

netapp内网穿透

1. 注册netapp账号 NATAPP-内网穿透 基于ngrok的国内高速内网映射工具 2. 购买隧道&#xff0c;要求不高的话可以使用这个免费的 3.设置隧道 主要设置你想通过公网访问你的本地端口号 4.点击我的隧道&#xff0c;注意这里的authtoken&#xff0c;后面会用到 5.本地下载netap…

[E二叉树] lc572. 另一棵树的子树(dfs+前中序判断+树哈希+树上KMP+好题)

文章目录 1. 题目来源2. 题目解析 1. 题目来源 链接&#xff1a;572. 另一棵树的子树 2. 题目解析 看到这个题目就感觉不简单&#xff0c;因为写了写 dfs 版本的&#xff0c;发现好像不太会… 还是简单粗暴一点&#xff0c;直接搞一个 前序中序&#xff0c;进行判断即可。我…

应急响应-Web3

打开虚拟机之后&#xff0c;运行解题系统&#xff1a; 共有三个问题&#xff01; 攻击者的两个IP地址 首先我们看到机器的桌面上还是存在phpstudy&#xff0c;那就还是先去看看是不是从web层面进行的攻击&#xff0c;上传webshell从而getshell。 利用D盾尝试对phpstudy目录进…

Python | Leetcode Python题解之第319题灯泡开关

题目&#xff1a; 题解&#xff1a; class Solution:def bulbSwitch(self, n: int) -> int:return int(sqrt(n 0.5))

redis面试(四)持久化

什么是持久化&#xff1f; 由于redis是基于内存操作的轻量型数据库&#xff0c;所以如果发生宕机重启这种事情&#xff0c;存储的数据就会直接丢失&#xff0c;如果在里面存储了没有备份的数据&#xff0c;那么确实会对我们的业务造成一定影响。 所以我们要通过持久化的手段&a…

Java中interrupted()与isInterrupted()的区别

Java中interrupted&#xff08;&#xff09;与isInterrupted&#xff08;&#xff09;的区别 1、interrupted()方法1.1 示例 2、isInterrupted() 方法2.1 示例 3、总结 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在Java多线程编程中&a…

手持式气象站:科技赋能精准气象观测

在自然界与人类社会的交织中&#xff0c;气象条件始终扮演着至关重要的角色。无论是农业生产、城市建设&#xff0c;还是日常生活、户外活动&#xff0c;都离不开对天气变化的准确预测和及时响应。随着科技的飞速发展&#xff0c;气象观测设备也迎来了变化&#xff0c;其中&…

什么是人工智能 (AI)

1955年9月&#xff0c;达特茅斯学院&#xff08;Dartmouth College&#xff09;年轻的数学助理教授约翰麦卡锡&#xff08;John McCarthy&#xff09;大胆提出&#xff0c;“原则上&#xff0c;学习的各个方面或智力的任何其他特征都可以被精确地描述&#xff0c;以至于可以制造…

使用Python3脚本检查节假日并通过企业微信发送每日信息

文章目录 简介环境配置企业微信机器人创建群聊设置机器人信息 脚本详解导入必要的库获取节假日信息判断是否为工作日或节假日获取天气预报获取每日一句发送消息到微信主函数 加入定时任务总结完整代码 简介 在日常工作和生活中&#xff0c;自动化任务可以帮助我们节省大量时间…

吃惊!这个Windows双系统方法逆天了|UEFI篇

前言 最近小白在折腾别的系统教程&#xff0c;偶然间发现居然有一个很nice的Windows双系统教程。于是于是&#xff0c;果断尝试了一下&#xff0c;发现真的很可行&#xff01; 这个双系统的办法并不需要使用到WinPE系统&#xff0c;因此并不需要使用到U盘&#xff0c;只需要在…

科普文:微服务之SpringBoot性能优化器动态线程池【Dynamic-Tp】特性和源码解读

一、简述 gitee地址&#xff1a;https://gitee.com/yanhom/dynamic-tp github地址&#xff1a;https://github.com/lyh200/dynamic-tp dynamic-tp是一个轻量级的动态线程池插件&#xff0c;它是一个基于配置中心的动态线程池&#xff0c;线程池的参数可以通过配置中心配置进…

数的三次方根

题目 给定一个浮点数 n&#xff0c;求它的三次方根。 输入格式 共一行&#xff0c;包含一个浮点数 n。 输出格式 共一行&#xff0c;包含一个浮点数&#xff0c;表示问题的解。 注意&#xff0c;结果保留 6 位小数。 数据范围 输入样例&#xff1a; 1000.00 输出样例&a…