文字列の比較
CoddyのC++ジャーニー「基礎」セクションの一部。レッスン 22/74。
C++では、stringを比較する方法が複数あります。 std::stringはクラスなので、stringの比較を直感的かつ簡単に行えるオーバーロードされた演算子があります。
文字列を比較する最も一般的な方法は、比較演算子(==、!=、<、>、<=、>=)を使用することです:
string str1 = "hello";
string str2 = "hello";
string str3 = "Hello";
bool result1 = (str1 == str2); // true
bool result2 = (str1 == str3); // false(大文字小文字を区別)
bool result3 = (str1 != str3); // truecompare() メソッドも使用できます。このメソッドは、0 を strings が equal の場合に返し、最初の string が辞書順で小さい場合はnegative の整数を、大きい場合はpositive の整数を返します。正確な値は実装によって定義されることに注意してください。必ずしも -1 や 1 になるとは限りません。
string str1 = "a";
string str2 = "b";
string str3 = "c";
cout << str2.compare(str1) << endl;
// 正 (b は a の後に来る)
cout << str2.compare(str3) << endl;
// 負 (b は c の前に来る)
cout << str2.compare(str2) << endl;
// 0 (等しい文字列)自分で試してみよう
このレッスンにはコードチャレンジは含まれていません。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: C++オンラインコンパイラ