【C++】字符串常用函数记录

文章介绍了C++中处理字符串的两个重要函数:substr()用于获取字符串的子串,而compare()则用于比较字符串。substr()函数可以从指定位置开始提取指定长度的子串,compare()函数则按照字典顺序比较两个字符串或其子串,返回值表示比较结果。示例代码展示了这两个函数的使用方法。
摘要由CSDN通过智能技术生成
📝我的个人主页
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​
💬总结:希望你看完之后,能对你有所帮助,不足请指正!共同学习交流 🖊
✉️今天你做别人不想做的事,明天你就能做别人做不到的事♐

1、substr()

string &a,
a.substr(start,length);

函数的功能是返回字符串a从start位置开始的长为length的子串,其中start参数必须提供,参数length为可选,如果没有提供length参数的话,将返回字符串a从start位置开始一直到字符串a的最后的子串。

2、compare()

str1.compare(3,4,str2)
  • 两个字符串相同,返回0。
  • 调用字符串小于被调用字符串,返回-1。
  • 调用字符串大于被调用字符串,返回 1。

字符串说的大小通常和字典顺序是一致的。 字符串小的在字典里靠前,字符串大的在字典里靠后。即返回值是-1的话,调用字符串比被调用字符串靠前;返回值是1的话,调用字符串比被调用字符串靠后。

compare()比较时,是逐字符比较的,一旦能比较出结果,就不再比较了。 例如“abc”和“adf”,首先a和a比较,比不出结果;则b和d比较,结果就是“abc”小于“adf”,返回 -1,即字典里“abc”在“adf”前面。例如“abc”和“abcd”比较,若“abc”都比完了,“abcd”还没完,说明“abc”小,返回值为 -1,字典里“abc”靠前。总之记住这个比较规则和字典顺序一致即可。

#include<iostream>
using namespace std;
int main()
{
    string s1="abandon";
    string s2="about";
    int b=s1.compare(s2);//直接比较,s1小于s2,故返回-1
    cout<<b<<endl;

    int c=s1.compare(2,4,s2);//s1下标为2的字符a开始的4个字符ando和s2进行比较。ando大于s2故返回1
    cout<<c<<endl;

    int d=s1.compare(2,4,s2,1,3);
    cout<<d<<endl;//s1下标为2的字符a开始的4个字符ando和s2下标为1的字符b开始的3个字符bou比较。前者小,故返回-1。

    string s3="abc";
    string s4="abc";
    int e=s3.compare(s4);//相等返回0
    cout<<e<<endl;

    return 0;
}

持续更新中,可先收藏关注避免迷路喔!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力学习的小马

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值