#include #include #include using namespace std; int main() { string cpps1 = "ABC", cpps2 = "DEF", cpps3 = "abc "; // c++ style strings char cs1[] = "ABC", cs2[] = "DEF", cs3[] = "abc "; // c style strings bool a1, a2, a3; cout << "comparing C++ style strings:\n"; a1 = ( cpps1 < cpps2 ); a2 = ( cpps3 < cpps2 ); a3 = ( cpps1 < cpps3 ); cout << " is \"" << cpps1 << "\" < \"" << cpps2 << "\"? " << a1 << endl; cout << " is \"" << cpps3 << "\" < \"" << cpps2 << "\"? " << a2 << endl; cout << " is \"" << cpps1 << "\" < \"" << cpps3 << "\"? " << a3 << endl; cout << "comparing C style strings (the WRONG WAY!):\n"; a1 = ( cs1 < cs2 ); a2 = ( cs3 < cs2 ); a3 = ( cs1 < cs3 ); cout << " is \"" << cs1 << "\" < \"" << cs2 << "\"? " << a1 << endl; cout << " is \"" << cs3 << "\" < \"" << cs2 << "\"? " << a2 << endl; cout << " is \"" << cs1 << "\" < \"" << cs3 << "\"? " << a3 << endl; cout << "comparing C style strings using strcmp (the RIGHT WAY!):\n"; a1 = ( strcmp( cs1, cs2 ) < 0 ); a2 = ( strcmp( cs3, cs2 ) < 0 ); a3 = ( strcmp( cs1, cs3 ) < 0 ); cout << " is \"" << cs1 << "\" < \"" << cs2 << "\"? " << a1 << endl; cout << " is \"" << cs3 << "\" < \"" << cs2 << "\"? " << a2 << endl; cout << " is \"" << cs1 << "\" < \"" << cs3 << "\"? " << a3 << endl; } // end of main() /* output: comparing C++ style strings: is "ABC" < "DEF"? 1 is "abc " < "DEF"? 0 is "ABC" < "abc "? 1 comparing C style strings (the WRONG WAY!): is "ABC" < "DEF"? 0 is "abc " < "DEF"? 1 is "ABC" < "abc "? 0 comparing C style strings using strcmp (the RIGHT WAY!): is "ABC" < "DEF"? 1 is "abc " < "DEF"? 0 is "ABC" < "abc "? 1 */