*cb21a_c++_string对象的比较
s.compare(s2)--区分大小的
s.compare(pos1,n1,s2)
s.compare(pos1,n1,s2,pos2,n2)
s.compare(cp)
s.compare(pos1,n1,cp)
s.compare(pos1,n1,cp,n2)
>,<,==,!=,都是区分大小的
欢迎讨论,相互学习。 txwtech@163.com
1 /*cb21a_c++_string对象的比较 2 s.compare(s2)--区分大小的 3 s.compare(pos1,n1,s2) 4 s.compare(pos1,n1,s2,pos2,n2) 5 s.compare(cp) 6 s.compare(pos1,n1,cp) 7 s.compare(pos1,n1,cp,n2) 8 9 >,<,==,!=,都是区分大小的 10 欢迎讨论,相互学习。 txwtech@163.com 11 */ 12 #include <iostream> 13 #include <string> 14 15 using namespace std; 16 17 int main() 18 { 19 string s1("abcxyz"); 20 string s2("abdxyz"); 21 const char *cp = "aabxxz"; 22 23 if (s1 != s2) 24 cout << "不相等" << endl; 25 if (s1 == s2) 26 cout << "相等" << endl; 27 if (s1 > s2) 28 cout << "s1大于s2" << endl; 29 if (s1 < s2) 30 cout << "s1小于s2" << endl; 31 if (s1.compare(s2) > 0) 32 cout << "s1大于s2" << endl; 33 if (s1.compare(s2) < 0) 34 cout << "s1小于s2" << endl; 35 if (s1.compare(s2) == 0) 36 cout << "s1等于s2" << endl; 37 if (s1.compare(3, 3, s2) > 0) 38 cout << "s1的第三位开始的连续3个字母比s2大" << endl; 39 if (s1.compare(3, 3, s2, 3, 3) == 0) 40 cout << "s1的第3位开始的3个字符与s2的第3位开始的3个字符相等,实现部分比较" << endl; 41 if (s1.compare(3, 3, cp, 3, 3) > 0) 42 cout << "s1的第3位开始的3个字符与指针的第3位开始的3个字符比较,s1大。" << endl; 43 if (s1.compare(3, 3, cp) > 0) 44 cout << "s1的第3位开始的3个字符与指针整体比较,s1大" << endl; 45 return 0; 46 }