C言語で文字列を比較する方法は何ですか?
C言語では、2つの文字列を比較するためにstrcmp()関数を使用できます。
strcmp()関数は2つの引数を受け取ります。それぞれ比較する2つの文字列です。この関数は、2つの文字列の比較結果を表す整数値を返します。具体的な比較ルールは以下の通りです。
- もし2つの文字列が等しい場合、戻り値は0となります。
- もし最初の文字列が二番目の文字列よりも大きい場合、正の整数を返す。
- もし最初の文字列が2番目の文字列よりも小さい場合、負の整数を返す。
以下は例です:
#include <stdio.h>
#include <string.h>
int main() {
char str1[20] = "Hello";
char str2[20] = "World";
int result;
result = strcmp(str1, str2);
if(result == 0) {
printf("两个字符串相等\n");
}
else if(result < 0) {
printf("第一个字符串小于第二个字符串\n");
}
else {
printf("第一个字符串大于第二个字符串\n");
}
return 0;
}
結果は次の通りです:
第一个字符串小于第二个字符串