C++の文字列の比較は、ASCIIコードに基づいて行われます。

C++では、文字列の大小比較は文字のASCIIコード値に基づいて行われます。比較ルールは以下の通りです。

  1. 文字列の比較は、左から右へ1文字ずつ行われます。
  2. 比較している位置の文字が一致していれば、次の位置の文字を比較していく。
  3. 特定の位置で文字列内の文字が異なる場合、文字のASCIIコード値に基づいて文字列の大小を確認します。ASCIIコード値の小さい文字は小さいとみなされます。
  4. 文字に含まれるすべての文字が別の文字列に含まれていて、かつ文字列が短い場合は小さい文字列とみなす。
  5. 文字内のすべての文字が一致し、文字数が同じ場合、文字列は等しいとみなされます。

例として「abc」と「ab」を規則3に依拠して比較すると、文字’c’のASCIIコード値は文字’b’のそれより大きいため、「abc」がより大きな文字列と判定される。

なお、ここで説明した比較規則はCスタイルの文字列(終端文字0を含むchar配列)に対するもので、C++のstd::stringクラスではそのまま関係演算子(==、!=、<、>、<=、>=など)を使用することができます。

bannerAds