「C言語における文字列比較のライブラリ関数は何ですか?」

C言語では、文字列を比較するためのライブラリ関数は`strcmp()`です。これは、2つの文字列の内容を比較し、比較結果を表す整数値を返します。

`strcmp()`関数の宣言は以下の通りです:

int strcmp(const char *str1, const char *str2);

その関数は、比較する2つの文字列を引数として受け取ります。これらの引数は、それぞれ`const char *`型です。

以下は、関数の返り値の意味です:

もし`str1`と`str2`が等しければ、0を返す。

str1がstr2より小さい場合、通常は-1を返す。

もし、str1がstr2より大きい場合は、正の数(通常は1)を返します。

例えば、以下のコードは、`strcmp()`関数を使用して二つの文字列を比較する方法を示しています。

#include <stdio.h>

#include <string.h>

int main() {

char str1[] = “Hello”;

char str2[] = “World”;

int result = strcmp(str1, str2);

if (result == 0) {

printf(“The strings are equal\n”);

} else if (result < 0) {

printf(“%s is less than %s\n”, str1, str2);

} else {

printf(“%s is greater than %s\n”, str1, str2);

}

return 0;

}


結果は”Hello is less than World”になります。なぜなら、アルファベット”H”のASCII値は”W”よりも小さいからです。

bannerAds