Compare strings by index: string1.compare( 2, 5, string3, 0, 5) : string compare « String « C++






Compare strings by index: string1.compare( 2, 5, string3, 0, 5)

  

#include <iostream>
using std::cout;
using std::endl;

#include <string>
using std::string;

int main()
{
   string string1( "AAAAAAAAAAAAAA" );
   string string2( "BBBBBBBBBBBBBB" );
   string string3( "CCCCCCCCCCCCCC" );
   string string4( string2 );

   cout << "string1: " << string1 << "\nstring2: " << string2
      << "\nstring3: " << string3 << "\nstring4: " << string4 << "\n\n";

   // comparing string1 (elements 2-5) and string3 (elements 0-5)
   int result = string1.compare( 2, 5, string3, 0, 5 );

   if ( result == 0 )
      cout << "string1.compare( 2, 5, string3, 0, 5 ) == 0\n";
   else {
      if ( result > 0 )
         cout << "string1.compare( 2, 5, string3, 0, 5 ) > 0\n";
      else
         cout << "string1.compare( 2, 5, string3, 0, 5 ) < 0\n";
   }

   return 0;
}

/* 
string1: AAAAAAAAAAAAAA
string2: BBBBBBBBBBBBBB
string3: CCCCCCCCCCCCCC
string4: BBBBBBBBBBBBBB

string1.compare( 2, 5, string3, 0, 5 ) < 0

 */
        
    
  








Related examples in the same category

1.String: equals
2.string overloaded equality and relational operators
3.Compare string ignoring the case
4.Compare sub string: string4.compare( 0, string2.length(), string2 )
5.Use == > and < to compare strings
6.Use string.compare to compare two strings
7.Set with functor for string comparison
8.return true if c1 < c2 (ignoring case), false otherwise
9.Use std::lexicographical_compare to compare two char arrays
10.Compare strings
11.return true if c1 equals c2 (regardless of case), false otherwise