cb21a_c++_string对象的比较

*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 }
欢迎讨论,相互学习。 txwtech@163.com
原文地址:https://www.cnblogs.com/txwtech/p/12323741.html