其他分享
首页 > 其他分享> > 比较字符串是否相同(不适用库函数)

比较字符串是否相同(不适用库函数)

作者:互联网

问题

比较字符串是否相同。
Input
输入两个字符串。
Output
当字符串完全相同时输出0。不完全相同时,比较对应位置不同字符的ASCII值,前者大于后者输出1反之输出-1。
#include<stdio.h>
#include<string.h>

int m_strcmp(const char* str1, const char*str2) {
	//判空操作
	if (str1 == NULL || str2 == NULL) {
		return 2;
	}
	//当str1==str2时返回0
	while (*str1 == *str2) {
		if (*str1 == '\0') {
			return 0;
		}
		str1++;
		str2++;
	}
	//当str1>str2时,返回1,否则返回-1
	return *str1 > *str2 ? 1 : -1;
}

int main() {
	char a[100];
	char b[100];
	gets(a);
	gets(b);
	int n = m_strcmp(a, b);
	printf("%d", n);
	return 0;
}

标签:return,int,str2,str1,适用,char,字符串,库函数
来源: https://www.cnblogs.com/pengyang97/p/15783566.html