模拟实现strcmp

strcmp函数的作用:比较两个字符串的大小。将两个字符串从左向右进行逐个字符比较(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。两个字符串相同时返回0,第一个字符串大于第二个字符串时返回一个正值,否则返回负值。

具体实现代码:

#include<stdio.h>
#include<stdlib.h>
int my_strcmp(char*string1, char *string2)
{
	if (string1 == NULL || string2 == NULL)
	{
		return 0;
	}
	while (*string1 == *string2)
	{
		string1++;
		string2++;
		if (string1 == '\0')
		{
			return 0;
		}
		if (*string1 > *string2)
		{
			return 1;
		}
		if (*string1 < *string2)
		{
			return -1;
		}
	}
}
int main()
{
	char arr1[] = "abc";
	char arr2[] = "abcd";
	char arr3[] = "abc";
	char arr4[] = "ab";
	int a=my_strcmp(arr1, arr2);
	int b=my_strcmp(arr1, arr3);
	int c=my_strcmp(arr1, arr4);
	printf("%d,%d,%d", a, b, c);
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/enjoymyselflzz/article/details/81134008