文字列を比較する
strcmp、wcscmp、_mbscmp
【書式】
int strcmp(
const char *string1,
const char *string2
);
int wcscmp(
const wchar_t *string1,
const wchar_t *string2
);
int _mbscmp(
const unsigned char *string1,
const unsigned char *string2
);
【引数】
string1、string2 NULLで終わる比較対象の文字列
【戻り値】
成功時 これらの関数の戻り値は、string1 と string2 を辞書式の順序で比較した関係を示します。
値 string1 と string2 の関係
0より大きい string1 は string2 よりも小さい
0 string1 は string2 に等しい
0より小さい string1 は string2 よりも大きい
失敗時 エラーが発生すると、_mbscmp 関数は、STRING.H と MBSTRING.H で定義されている _NLSCMPERROR を返します。
【機能】
strcmp関数はstring1とstring2を辞書式の順序で比較し、両者の関係を示す値を返します。
wcscmp関数と_mbscmp関数は、strcmp関数のワイド文字バージョンとマルチバイト文字バージョンです。
wcscmp関数の引数と戻り値はワイド文字列で、_mbscmp関数の引数と戻り値はマルチバイト文字列です。
_mbscmp関数は、現在のマルチバイトコードページに基づいてマルチバイト文字のシーケンスを認識し、
エラーが発生すると _NLSCMPERRORを返します。
_stricmp、_wcsicmp、_mbsicmpの各関数は、最初に文字列を小文字に変換してから比較します。
ASCIIテーブルのZとaの間にある文字([、\、]、^、_、`)を含む 2 つの文字列の場合、
大文字と小文字のどちらで比較するかによって結果が異なります。
たとえば、2つの文字列"ABCDE"と"ABCD^"では、
小文字で比較すると"abcde">"abcd^"になりますが、
大文字で比較すると"ABCDE"<"ABCD^"になります。
【インクルードファイル】
strcmp関数関数 string.h
wcscmp関数関数 string.h または wchar.h
_mbscmp関数関数 mbstring.h
【必要追加ライブラリ】
なし