strcmp函数是string库的常用函数,今天我们来看看如何自己实现这个函数:

先上代码:

#include <stdio.h>
#include<string.h>
void Strcmp(char *str1,char *str2)
{while((*str1!='\0')&&(*str1==*str2)){str1++;str2++;}int t;t=*str1-*str2;if(t==0)printf("same string\n");if(t>0)printf("str1 is bigger\n");if(t<0)printf("str2 is bigger\n");
}
int main()
{char str1[10],str2[10];start:gets(str1);gets(str2);Strcmp(str1,str2);goto start;return 0;}

测试如下:

整个代码的精髓在于下面这句:

(*str1!='\0')&&(*str1==*str2)

这是判断两个字符串是否相等的关键。即:当字符指针指向空,意味着字符串已经移动到最后了,比较已经结束,可以退出循环。或者两个字符串不相等时,函数也可以退出了。

我们所需要的关键信息已经得到,接下来看看字符串是否相等,这取决于循环退出时,str1和str2指向的元素是否相等。

接下来就是if来判断了。这里比较简单就不展开讲了。

strcmp函数的C语言实现相关推荐

  1. strcmp函数实现(c语言)

    strcmp函数实现(c语言) second60 20180601 #include <stdio.h> int strcmp_new(const char* src, const cha ...

  2. C语言实现strcmp函数(附完整代码)

    strcmp函数是C语言库函数.平时直接引用就行.但是有时候我们可能需要编写库函数. 直接看运行结果.  附上代码 #include <stdio.h> #include<strin ...

  3. 如何实现python中的strcmp函数

    def strcmp(str1,str2):if str1[:len(str2)] == str2:return 1elif str2[:len(str1)] == str1:return 1retu ...

  4. C语言不用strcmp函数比较字符串大小

    C语言不用strcmp函数比较字符串大小 #include <stdio.h> int main(){int i, res;char s1[100], s2[100];printf(&qu ...

  5. C语言之strcmp函数和strncmp函数

    C语言之strcmp函数和strncmp函数 strcmp 函数用于比较两个字符串是否一致. strncmp 函数用于比较两个字符串的前 n 个字符是否一致. strcmp函数代码示例及其执行结果: ...

  6. C语言使用strcmp()函数对两个汉字字符进行比较

    C语言使用strcmp()函数对两个汉字字符进行比较 最近写了个代码,发现关于使用strcmp()函数比较两个汉字字符串出现错误,现做以下改正: 源代码: #include<stdio.h> ...

  7. 比较两字符串的大小c语言,C语言strcmp函数

    C语言strcmp函数教程 在 也就是说,如果比较字符串 str1 和 str2,如果字符串 str1 的长度大于字符串 str2,但 str1 的字符却比 str2 的字符小,那么也是字符串 str ...

  8. c语言strcmp函数用法_strcmp()C库函数用法和示例

    c语言strcmp函数用法 C programming standard library provides strcmp() function in order to compare two stri ...

  9. Java语言strcmp函数用法_蓝桥杯 算法提高 11-1实现strcmp函数 (JAVA方法)

    蓝桥杯 算法提高 11-1实现strcmp函数 (JAVA方法) 首先这不是一个多难的题,但是网上的我没怎么找到有Java的代码,基本全都是c语言的,小编是个小白,如果有不对的地方请联系小编 问题描述 ...

最新文章

  1. java urlrewriter_java url重写技术(UrlReWriter)
  2. js两个等号和三个等号_js中两个等号(==)和三个等号(===)的区别
  3. cn域名注册国外_国内cn域名注册量超com域名,“com”时代结束了吗?
  4. python搞笑代码-【转】 Python 程序员的进化--搞笑版
  5. 2G的MSN邮箱已经不能申请了
  6. 如何做好性能压测(一)丨压测环境设计和搭建
  7. 现在转行前端,该怎么学习呢?怎么学好基础html、css、js
  8. eshop5的数据库结构说明
  9. 计算机病毒445端口,关闭135 445端口_445端口关闭方法_怎么防止电脑中勒索病毒
  10. 个性化制作nodemcu-firmware(esp8266/esp8285 固件制作)----包含lua程序bin的制作
  11. java计算机毕业设计网络教学系统源码+系统+数据库+lw文档
  12. 简信CRM:什么样的企业适合引入CRM管理系统?
  13. java微信公众平台开发教程分享
  14. 罗技数码的在线查询真伪
  15. javascript根据单元格内容动态合并相同内容单元格
  16. 塑胶卡扣弹性计算公式_弹性的计算方法
  17. 如何建立知识管理系统并制作自己的人生地图索引?
  18. 浏览器被毒霸占领这样去掉
  19. vulnhub靶场-Hacker_Kid-v1.0.1
  20. 灵备CDM的技术及原理

热门文章

  1. 【论文阅读】(2022)A goal-driven ruin and recreate heuristic for the 2D variable-sized bin packing prob...
  2. 丁酉新年假期江门,甘孜旅行手记
  3. 问题 E: 1.10 旅行时间  根据火车的出发时间和到达时间,编写程序计算整个旅途所用的时间。
  4. 出现ERROR:怎么解决
  5. 根据结构体数组中某一数据项对结构体数组排序
  6. vxe-table 实现复杂的表格功能。
  7. 快速使用Vitamio框架播放网络视频
  8. MySQL的隐式类型转换
  9. VS册程序设计C#---问卷调查系统
  10. vlc插件详细使用说明