機能 |
2つの文字列を現地域の照合順序(collation)に基づいて比較する。 ※ 地域(LC_COLLATE部門)によって結果は異なる |
||||
---|---|---|---|---|---|
定義 |
#include <string.h> int strcoll ( const char * s1, const char * s2 ); |
||||
引数 |
|
||||
戻り値 |
引数s1が引数s2より大きい場合、0より大きい値を返す。 引数s1が引数s2より小さい場合、0より小さい値を返す。 引数s1が引数s2と等しい場合、0を返す。 |
||||
実装例 |
#include <string.h> #include <stdio.h> #include <locale.h> int main(void) { int ret; /* 地域をスペイン語に設定 */ printf("locale=%s\n", setlocale(LC_COLLATE, "Spanish")); /* スペイン語ではciよりもchの方が後の並び */ ret = strcoll("ci", "ch"); printf("[strcoll] ci : ch = %d\n", ret); /* 地域を考慮せずに比較すると逆となる */ ret = strcmp("ci", "ch"); printf("[strcmp ] ci : ch = %d\n", ret); return 0; } |
||||
実行結果 |
locale=Spanish_Spain.1252 [strcoll] ci : ch = -1 [strcmp ] ci : ch = 1 |
strcoll()