自己写一个strcmp函数
Posted Koi279
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自己写一个strcmp函数相关的知识,希望对你有一定的参考价值。
strcmp是string.h里面的一个库函数,用来比较两个字符串,我们也可以自己写一个,
或许没有库函数那么严谨,但也能基本实现他的用处。
#include<stdio.h>
int my_strcmp(char* arr1,char* arr2)
int i=0;
while(*(arr1+i)==*(arr2+i)&&*(arr1+i)!=0&&*(arr2+i)!=0)
i++;
if(*(arr1+i)>*(arr2+i)) return 1;
else if(*(arr1+i)<*(arr2+i)) return -1;
else return 0;
int main()
char arr[2][256];
for(int i=0;i<2;i++)
scanf("%s",&arr[i]);
switch(my_strcmp(arr[0],arr[1]))
case 1:printf("arr1>arr2");break;
case 0:printf("arr1=arr2");break;
case -1:printf("arr1<arr2");break;
return 0;
写法和库函数里面一样,比较的是ascii玛值的大小。
测试结果如下
2的ASCII玛大于1的ASCII玛,所以第二个更大。
但我觉得我平时写程序时很多时候更想要一个单纯比较长度的compare函数,
因此,我也打算后续再写一个单纯比较长度的函数。
以上是关于自己写一个strcmp函数的主要内容,如果未能解决你的问题,请参考以下文章
用一个函数实现两个字符串的比较,即自己写一个strcmp函数,函数原型为 :int strcmp
C++ 写一个函数,实现两个字符串的比较,即自己写一个strcmp函数
求教,c语言 写一个函数,实现两个字符串的比较。即自己写一个strcmp函数