std::strcmp
From cppreference.com
| ヘッダー <cstring> で定義 |
||
| int strcmp( const char* lhs, const char* rhs ); |
||
2つのヌル終端バイト文字列を辞書順で比較します。
結果の符号は、比較される文字列で最初に異なる文字のペア(両方とも unsigned char として解釈されます)の値の差の符号となります。
lhs または rhs がヌル終端文字列へのポインタでない場合、動作は未定義です。
目次 |
[編集] パラメータ
| lhs, rhs | - | 比較するヌル終端バイト文字列へのポインタ |
[編集] 戻り値
lhsが辞書順でrhsより前にある場合、負の値。
lhsとrhsが等しく比較された場合はゼロ
lhsが辞書順でrhsより後にある場合、正の値。
[編集] 例
このコードを実行
#include <algorithm> #include <cstring> #include <iostream> #include <vector> int main() { std::vector<const char*> cats{"Heathcliff", "Snagglepuss", "Hobbes", "Garfield"}; std::sort(cats.begin(), cats.end(), [](const char* strA, const char* strB) { return std::strcmp(strA, strB) < 0; }); for (const char* cat : cats) std::cout << cat << '\n'; }
出力
Garfield Heathcliff Hobbes Snagglepuss
[編集] 関連項目
| 2つの文字列から指定された文字数を比較する (関数) | |
| 2つのワイド文字列を比較する (関数) | |
| 2つのバッファを比較する (関数) | |
| 現在のロケールに従って2つの文字列を比較する (関数) | |
| C言語のドキュメント strcmp
| |