次のような2つの文字列があるとします
入力 1: "xyz789"
入力 2 "mno123"
それらの値を比較して、S1 が S2 より大きいか、等しいか、または小さいかを出力する方法はありますか?
私はこれを標準ライブラリのみを使って手動で行っていますが、これまでのところ長さをチェックすることしかできませんでした (これは、長い文字列は大きいという安全な仮定ですが、同様の長さを比較すると難しくなります.
int compare_string(char *s1, char *s2)
{
while(*s1==*s2)
{
if ( *s1 == '\0' || *s2 == '\0' )
break;
s1++;
s2++;
}
if( *s1 == '\0' && *s2 == '\0' )
return 0;
else
return -1;
}