C++中string::compare的使用分析

在C++中使用std::string编写字符串相关操作时,我经常使用find方法,其实在有些场景下需要判断字符串是否相同,因而需要使用compare方法。下面是我的测试样例:

//description: 演示String::compare函数的用法,比较两个字符串是否相等?
//compile: g++ -g compare_string.cc -o compare_string
 
#include <string>
#include <iostream>
using namespace std;
 
int main(int argc, char* argv[])
{
    string str1("green apple");
    string str2("red apple");
    string str3("apple");
 
    if(str3.compare("apple") == 0)
        cout << str3 << " is an apple!" << endl;
 
    if(str1.compare(str2) !=0)
        cout << str1 << " is not " << str2 << endl;
 
    if(str1.compare(6, 5, "apple") == 0)
        cout << "still, " << str1 << " is an apple!" << endl;
                                                                                                                                                                       
    if(str2.compare(str2.size() - 5, 5, "apple") == 0)
        cout << "and " << str2 << " is also an apple!" << endl;
 
    if(str1.compare(6, 5, str2, 4, 5) == 0)
        cout << "therefore, both are apples!" << endl;
 
    return 0;
}

linuxidc@linuxidc:~/www.linuxidc.com/Linux公社 -$ g++ -o linuxidc.com
linuxidc@linuxidc:~/www.linuxidc.com/Linux公社 -$ ./linuxidc.com
apple is an apple!
green apple is not red apple
still, green apple is an apple!
and red apple is also an apple!
therefore, both are apples!

运行截图

C++中string::compare的使用分析

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/bc894c3ae113fc24d0797280b421084b.html