namespace std {
int strcoll(const char* s1, const char* s2);
}
概要
文字列を、ロケールに依存して比較する。
効果
現在のロケールのLC_COLLATEカテゴリに従って、s1が指す文字列とs2が指す文字列を比較する。
戻り値
s1側の文字列がs2側の文字列より大きい場合は正の整数、小さい場合は負の整数を返す。2つの文字列が等しい場合は0を返す。
備考
- この関数はロケールに依存するため、フリースタンディング処理系では提供されない。
- ロケールに依存しない単純なバイト単位の比較を行う場合は、
strcmpを使用する。
例
#include <cstring>
#include <iostream>
int main()
{
int r = std::strcoll("apple", "banana");
std::cout << (r < 0 ? "less" : r > 0 ? "greater" : "equal") << std::endl;
}
出力例
less
バージョン
言語
- C++98