网站首页 > 博客文章 正文
在C语言中,因为字符串没有被封装成对象,所以直接用==、!=比较。C语言提供了一个用于字符串比较的函数类型strcmp。
注意,字符串和字符完全不同,因为不同的编译器实现问题,返回值的情况也有所变化。
strncat()函数,用于两个字符串的拼接。
(1)函数原型
int strcmp(const char *_Str1,const char *_Str2);
(2)头文件
string.h
(3)功能
比较const char *_Str1,const char *_Str2所指的字符串内容,并根据第一个遇到的不相等字符ASCII值差确定返回值。
相等:0
_Str大于_Str2:1
_Str小于_Str2:-1
(4)基础实例代码
printf("%d\n",strcmp("a","a"));
printf("%d\n",strcmp("z","a"));
printf("%d\n",strcmp("a","z"));
(5)输出情况
(6)基础实例代码2:
printf("%d\n",strcmp("aa","az"));
printf("%d\n",strcmp("az","aa"));
(7)输出情况2:
(8)问题1:字符char可以比较吗?
回答:不可以,函数要求输入的是一个字符数组的首地址char*。而不是一个字符类型char。本质上,第一个是地址,第二个是一个整数类型(-128~127)
(9)问题2:返回值1,-1的取值是如何进行的
回答:根据两个字符数组最先出现的,相同下标的不同字符对应的ASICC码,做减法。
const char *_Str1-const char *_Str2
(10)问题3:返回值可以为32、-45、111吗?
回答:可以,有的编译器这个函数的实现,是根据ASICC码的差值。
猜你喜欢
- 2025-07-06 重要账户密码总是被盗|密码长度与强度怎样设置才最安全
- 2025-07-06 GET请求中URL的最大长度限制总结,读完之后,大部分程序员收藏了
- 2025-07-06 删除字符串的指定字符(删去字符串中指定字符)
- 2025-07-06 Twitter计划3月前将推文的长度扩展至一万字符
- 2025-07-06 Excel提取文本指定位置长度的函数和插件操作法
- 2025-07-06 Excel高级分列按固定字符长度进行文本拆分
- 2025-07-06 谈谈表单设计的一些细节(表单设计要点)
- 2025-07-06 一位女兵深情地呼唤“烈士们归队吧”
- 2025-07-06 字符串中删除指定长度及根据固定字符删除
- 2025-07-06 Rust字符串:String、&str、&String与字符串切片的精髓
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- ifneq (61)
- 字符串长度在线 (61)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)