strcmpi() — 大/小文字を区別しないストリングの比較
形式
#include <string.h>
int strcmpi(const char *string1, const char *string2);注:
strcmpi 関数は、C++ プログラムで使用できます。 __cplusplus__strings__ マクロがプログラムで定義されている場合にのみ、C でも使用できます。言語レベル
拡張機能
スレッド・セーフ
はい
ロケール依存
この関数の振る舞いは、現行ロケールの LC_CTYPE カテゴリーの影響を受ける可能性があります。 詳しくは、 CCSID とロケールについてを参照してください。
説明
strcmpi は、大/小文字を区別せずに string1 と string2 を比較します。 2 つの引数 string1 と string2 内のすべての英字は、比較の前に小文字に変換されます。
この関数は、ヌル終了ストリング上で作動します。 関数のストリング引数には、ストリングの終わりを示すマークであるヌル文字 (\0) が含まれると想定されます。
戻り値
strcmpi は、2 つのストリング間の関係を示す次のような値を戻します。| 値 | 意味 |
|---|---|
| 0 より小さい値 | string1 より小 string2 |
| 0 | string1 は string2 と同等です |
| 0 より大きい | string1 より大 string2 |
例
この例では、
strcmpi を使用して 2 つのストリングを比較します。#include <stdio.h>
#include <string.h>
int main(void)
{
/* Compare two strings without regard to case */
if (0 == strcmpi("hello", "HELLO"))
printf("The strings are equivalent.\n");
else
printf("The strings are not equivalent.\n");
return 0;
}出力は以下の通りです。 The strings are equivalent.関連情報
- strcoll() — 文字列を比較する
- strcspn() — 最初のワイド文字一致のオフセットを検索する
- strdup() — 重複する文字列
- stricmp() — 大 / 小文字を区別せずに文字列を比較する
- strncmp() — 文字列を比較する
- strnicmp() — 大 / 小文字の区別なしのサブストリングを比較する
- wcscmp() — ワイド文字ストリングを比較する
- wcsncmp() — ワイド文字ストリングを比較する
- strcasecmp() — 大 / 小文字を区別せずに文字列を比較する
- strncasecmp() — ケース・センシティブ無しで文字列を比較する
- <string.h>