编程实现两个字符串是否相等strcmp

//这是系统库的实现
int strcmp(const char* src, const char* dest)
{
	int rtn = 0;
	while(!(rtn = *(unsigned char*)src - *(unsigned char*)dest) && *dest)
	{
		++src;
		++dest;
	}
	if (rtn < 0)
	{
		rtn = -1;
	}else if (rtn > 0)
	{
		rtn = 1;
	}
	return rtn;
}

结果:相等返回0,src 大于dest返回1,src小于dest返回-1.。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-08 15:12:04

编程实现两个字符串是否相等strcmp的相关文章

用Java编程找到两个字符串中共有的字符

这道题的算法思想是把字符串1中的每个字符与字符串2中的每个字符进行比较,遇到共同拥有的字符,放入另一个数组中,最后顺序输出即可 但是这道题的难点在于怎么排除重复的字符 public class bothChar { public static String bothChar(String str1,String str2){ StringBuffer sb = new StringBuffer(); int n1,n2,m=0; //char a[]=new char[50]; n1=str1.

火影忍者之~鸣人 (字符串处理,strcmp)

火影忍者的男主角漩涡鸣人,因为身上封印着邪恶的九尾妖狐,无父无母的他受尽了村人的冷眼与歧视,他下定决心要成为第六代火影,让所有人都认同他的存在,火影是动漫火影忍者中主人公鸣人所在的国家的最强忍者的头衔,史上最强火影为鸣人的父亲--四代火影波风水门,乃是传说级的人物,也是最年轻的火影,要成为火影,不仅需要有千种忍术和全村人的认同 更要有冷静的头脑 德高望重也必不可少 还要有优秀的领导能力,这之中战斗能力是最重要的,然后是领导能力,现在又到了选火影的时候了,可是鸣人此时还很弱,所以给出m个候选人,每

PHP两个字符串比较(人为出错),两字符串类型和数据表面相等,但strcmp()结果不为0

PHP中,比较两个字符串是否相等用:strcmp(): PHP strcmp() 函数 PHP String 函数 定义和用法 strcmp() 函数比较两个字符串. 该函数返回: 0 - 如果两个字符串相等 <0 - 如果 string1 小于 string2 >0 - 如果 string1 大于 string2 语法 strcmp(string1,string2) 参数 描述 string1 必需.规定要比较的第一个字符串. string2 必需.规定要比较的第二个字符串. 提示和注释 注

java语言编程,求两个字符串的最大子串

package stringTest; public class StringDemo4 { public static void main(String[] args) { String str1 = "Ilikejavaverymuch"; String str2 = "java is useful"; StringDemo4 sd4 = new StringDemo4(); sd4.sop(sd4.getMaxSubString1(str1, str2));

编程之美之字符串移位包含问题

[题目] 给定两个字符串s1和s2,要求判断s2是否能够被通过s1做循环移位(rotate)得到的字符串包含.例如,S1=AABCD和s2=CDAA,返回true:给定s1=ABCD和s2=ACBD,返回false. [分析] [思路一] 从题目中可以看出,我们可以使用最直接的方法对S1进行循环移动,再进行字符串包含的判断,从而遍历其所有的可能性. 字符串循环移动,时间复杂度为O(n),字符串包含判断,采用普通的方法,时间复杂度为O(n*m),总体复杂度为O(n*n*m). 字符串包含判断,若采

Unix/Linux环境C编程入门教程(30) 字符串操作那些事儿

函数介绍 rindex(查找字符串中最后一个出现的指定字符) 相关函数 index,memchr,strchr,strrchr 表头文件 #include<string.h> 定义函数 char * rindex( const char *s,int c); 函数说明 rindex()用来找出参数s字符串中最后一个出现的参数c地址,然后将该字符出现的地址返回.字符串结束字符(NULL)也视为字符串一部分. 返回值 如果找到指定的字符则返回该字符所在的地址,否则返回0. 范例 #include

Java中比较两个字符串是否相等的问题

java中判断两个字符串是否相等的问题 我最近刚学java,今天编程的时候就遇到一个棘手的问题,就是关于判断两个字符串是否相等的问题.在编程中,通常比较两个字符串是否相同的表达式是"==",但在java中不能这么写.在java中,用的是equals(); 例:A字符串和B和字符串比较: if(A.equals(B)){ } 返回true 或false. String 的equals 方法用于比较两个字符串是否相等.由于字符串是对象类型,所以不能用简单的"=="判断.

VC++ 比较两个字符串是否相等,字母大小写相关。

1.strcmp 这是用于ANSI标准字符串的函数(如string和char *),此函数接受两个字符串缓冲区做为参数,如果两个字符串是相同的则返回零.否则若第一个传入的字符串的值大于第二个字符串返回值将会大于零,若传入的第一个字符串的值小于第二个字符串返回值将小于零. char *ch="翔翔糖糖";if(strcmp(ch,"翔翔糖糖")==0){    //字符串相等}else{    //字符串不相等} 2.wcscmp 这个函数是strcmp所对应的Uni

java中判断两个字符串是否相等的问题

我最近刚学java,今天编程的时候就遇到一个棘手的问题,就是关于判断两个字符串是否相等的问题.在编程中,通常比较两个字符串是否相同的表达式是"==",但在java中不能这么写.在java中,用的是equals(); 例:A字符串和B和字符串比较: if(A.equals(B)){ } 返回true 或false. String 的equals 方法用于比较两个字符串是否相等.由于字符串是对象类型,所以不能用简单的"=="判断.而使用equals比较两个对象的内容是否