C语言--strcmp ,stmcmp(比较)

这篇具有很好参考价值的文章主要介绍了C语言--strcmp ,stmcmp(比较)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

两个字符串进行比较,相等为0
字符串比较
strcmp 原型int strcmp(const chars1,const chars2)
若str1=str2,则返回零;
若str1<str2,则返回负数;
若str1>str2,则返回正数

strncmp 原型int strncmp(const chars1,const chars2,size_t n)
功能是把str1和str2进行比较,最多比较前n个字节。
若str1和str2的前n个字符相同,则返回0
若s1>s2,则返回大于0的值;
若s1<s2,则返回小于0的值。文章来源地址https://www.toymoban.com/news/detail-634154.html

#include <stdio.h>
#include <string.h>
#include <assert.h>

int myStrcmp(char *str1, char *str2)
{
	int ret = 0;
	int n_str1 = 0;
	int n_str2 = 0;
	char *bakStr1 = str1;
	char *bakStr2 = str2;

	while( *str1 && *str2 && (*str1 == *str2)){
		str1++;
		str2++;
	}
	if(*str1 || *str2){
		str1 = bakStr1;
		str2 = bakStr2;
		while(*str1){
			n_str1 += *str1;
			str1++;
		}
		while(*str2){
			n_str2 += *str2;
			str2++;
		}
	}
	ret = n_str1 - n_str2;
	if(ret < 0){
		ret = -1;
	}
	if(ret > 0){
		ret = 1;
	}
	return ret;
}
int main()
{
	char *p1 = "gebillaowang";
	char *p2 = "gebiilaowang";

	int ret = myStrcmp(p1,p2);//-1 1 0
	if(ret == 0){
		puts("两个字符串一样");
	}
	printf("RET = %d\n",ret);
	return 0;
}

到了这里,关于C语言--strcmp ,stmcmp(比较)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • iOS APP外包开发的语言比较

    iOS APP外包开发的语言比较

    iOS APP是Apple公司运行在iPhone手机上的APP,开发这样的APP有两种开发语言可以选择,都是由Apple公司提供的语言。其中Objective-C使用时间相对较长,有历史兼容考虑,而Swift是新的开发语言,更符合近些年开发语言的发展理念。今天和大家分享一下两者的区别,希望对大家有所帮

    2024年02月16日
    浏览(13)
  • C语言深度剖析,关于查找一个数组里面的最大值(max)、最小值(min)的通俗算法,简单易懂。采用比较法进行查找。

    这里采用了一个假设 假设第一个数为最大值,其他数与第一个数比较。 这个算法与上面求解最大值的方法相反。 1、首先,定义行和列。 用行标记来确定列的数量。 i 来表示行, j来表示列。 2、内嵌的for循环只打印一行所有列。 如,i=3时,此时j=3. 从1*3 遍历到3*3后内嵌循环

    2024年02月08日
    浏览(14)
  • 【C++中的strcmp函数】

    在C++中,字符串比较是一项常见的操作,用于判断两个字符串是否相等或者大小关系。 strcmp 函数是C++标准库中用于字符串比较的重要函数。 strcmp 函数用于比较两个字符串的大小关系。它的原型如下: str1 和 str2 :要进行比较的两个字符串。 strcmp 函数会按照字典顺序逐个比

    2024年02月08日
    浏览(12)
  • Go语言和C++语言比较

    介绍 GO : Go语言(又称Golang)是由谷歌公司的技术工程师在2007年开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。其设计初衷是为了解决大规模并发处理和互联网应用开发中的问题。 在2007年的一次技术会议中,谷歌公司的技术工程师讨论了C++语言

    2024年01月19日
    浏览(8)
  • C语言三个数比较大小

    利用中间一个过渡变量进行判断,具体代码如下: 具体的比较方法和第一种类似,具体代码如下: 利用xy?x:y原理进行比较,具体代码如下: 以上三种方法都可以进行三个数字的大小比较运算,如果还有其它的方法,希望大家给予评论,相互交流。

    2024年02月12日
    浏览(15)
  • JAVA语言-比较器Comparator

    JAVA语言-比较器Comparator

    目录 一、什么是Comparator 二、Java compare方法和compareTo方法 三、java中Comparable和Comparator的区别 Comparator的例子 Comparator 是javase中的接口,位于java.util包下。 数组工具类和集合工具类中提供的工具方法sort方法都给出了含有Comparator接口的重载方法。 List实例调sort方法 demo如下: 使

    2024年02月06日
    浏览(11)
  • 七大经典比较排序算法

    七大经典比较排序算法

    🌟 思想: 直接插入排序是一种简单的插入排序法, 思想是是把待排序的数据按照下标从小到大,依次插入到一个已经排好的序列中,直至全部插入,得到一个新的有序序列 。 例如:我们玩扑克牌的时候,每次摸进一张的新的牌我们会将其插入到合适的位置。 思路: 我们

    2024年02月15日
    浏览(14)
  • KMP算法比较次数

    KMP算法比较次数

    主串T = “abaabaabcabaabc”,模式串S=“abaabc”,采用KMP算法匹配,到匹配成功为止,比较次数是: 序号: 1 2 3 4 5 6 模式串:a b a a b c next[j]: 0 1 1 2 2 3 关于next数组求法 : 前两位为0、1,后面比如第3位,则比较前2个字符串的前后缀公共子串最大长度,比如最后一个c位置,aba

    2024年02月13日
    浏览(4)
  • 【C语言】PTA——字符串比较

    编写一个函数实现两个字符串的比较,即自己写一个strcmp函数,函数原型为“int strcmp(char* p1,char* p2);”设p1指向字符串s1,p2指向字符串s2,要求当s1==s2时,函数返回值为0;若s1≠s2,则返回二者中第一个不相同字符的ASCII码差值(如\\\"BOY\\\"与\\\"BAD\\\"的第二个字母不同,\\\'O\\\'与\\\'A\\\'之差为

    2024年02月04日
    浏览(11)
  • C语言例程:通过指针比较整数大小

    C语言例程:通过指针比较整数大小

    本实例通过指针实现整数大小的比较。程序要求定义 3 个整型变量用于存储读入的 3 个整数。 另定义 3 个指向整型变量的指针变量,并利用它们实现将 3 个整型变量中的 3 个整数按值从小到 大顺序输出。 指针的概念 指针是C语言中广泛使用的一种数据类型。运用指针编程是

    2024年02月03日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包