编写c语言程序,不使用strcmp函数,比较任意两个字符串的大小。

编写c语言程序,不使用strcmp函数,比较任意两个字符串的大小。,第1张

首先

比磨行较两个字符串指举的长度是否一样

int str1length = strlen(str1)

int str2length = strlen(str2)

如果不一样,就不用比了

if(str1 != str2) return 不相匹配

如果相等

int i = 0

while( i <唯游碧 str1length)

{

if(str1[i] != str2[i])

{

return 不相匹配

}

i++

}

else

return 相等

说strcmp不能用,strlen总可以用吧?

#include <iostream>

#include <string.h>

using namespace std

int myCmp( const char* lhs,const char* rhs )

{

typedef unsigned int uint

uint lhs_size = strlen(lhs)

uint rhs_size = strlen(rhs)

uint size = lhs_size <rhs_size?lhs_size:rhs_size

for( uint i=0i<size++i )

{

if( *(lhs+i) <*(rhs+i) )

return -1

else if( *(lhs+i) >*(rhs+i ) )

return 1

}

if( lhs_size <rhs_size )

return -1

else if( lhs_size >rhs_size )

return 1

return 0

}

int main()

{

char *p1 = "abc"卖罩告

char *p2 = "ab"

char *p3 = "ab"

char *p4 = "bcd"

cout<闷耐<myCmp(p1,p2)

cout<<strcmp(p1,p2)

cout<<endl

cout<<myCmp(p2,p3)<<strcmp(p2,p3)<<endl

cout<<中明myCmp(p1,p4)<<strcmp(p1,p4)<<endl

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8253905.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存