C++ string类常见函数的说明与使用

substr函数

截取函数

某string 类字符  .  substr(截取的开始,截取的个数);
 
#include<bits/stdc++.h>
using namespace std;
int main()
{
    string s,s2;
    cin>>s;
    s2=s.substr(2,3);
    cout<<s2<<endl;
    
 } 

isupper函数

用来判断字符c是否为大写英文字母。

 if(isupper(s2[i]))
         s2[i]+=32;

find函数

find函数在字符中寻找另一个字符串;

find 的返回值否为-1;

使用方法

1.在s中寻找s2:   s.find(s2)
​
2.从指定字符位置寻找:s.find(s2,n)

rfind函数

从后寻找 使用方法同find

insert函数

插入字符

使用方法

**1. s.inster(插入位置,插入字符)**
​
**2. s.inster(插入位置,插入字符个数,插入的字符);**
​
**3. s.inster(++s,begin(),2,'字符')//即从第一个开始插入字符**
​
**4. s.inster(6,s2,3,3)//从s的第6位插入s2从第三位开始的后三位**
​
**5. s.inster(1,'word',2)//在s的第一个字符位置插入’word‘的’wo‘**
​
​
​
​
​

length()函数

判断长度

使用方法

string s;
int n;
n=s.length();
//n即为字符的长度

puch_back()函数

插入函数

使用方法

string s;
s.push_back('a');
//在s末尾插入字符a;

compare()函数

比较函数

  • -1 表示当前的字符串小;

  • 0 表示两个字符串相等;

  • 1 表示另一个字符串小。

  • compare()比较时逐字符比较的,一旦能比较出结果,就不再比较了。

使用方法

    
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;

erase函数

删除函数

使用方法

string str = "123456789";
 
str.erase(3, 3);
cout<<str;   // 123789
 
str.erase(str.begin() + 3);
cout<<str;   // 12356789
 
str.erase(str.begin() + 3, str.begin() + 6);
cout<<str;   // 123789

replace函数

替换函数

使用方法

string s1("hello,world!");
 
s1.replace(6, 5, "girl");                       // 结果:hello,girl.
s1.replace(s1.size() - 1, 1, 1, '.');           // 结果:hello,world.
s1.replace(s1.begin(), s1.begin() + 5, "boy");  // 结果:boy,girl.

substr函数

截取函数

使用方法

//s.substr(截取字符位置,截取个数);
#include <iostream>
#include <string>
using namespace std;
 
int main(){
    string s1 = "first second third";
    string s2;
    s2 = s1.substr(6, 6);
    cout<< s1 <<endl;//first second third
    cout<< s2 <<endl;//second
    return 0;
}

clear函数

清空函数(实际并不是清空只是在数组首相加'\0'使得打印不出来

使用方法

string t;
cin<<t;
t.clear();

reverse函数

反转函数

使用方法

1.反转string
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main() {
    string N;
    cin>>N;
    reverse(N.begin(), N.end());
    cout<<N<<endl;
}
​
2.反转数组
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
int main() {
    char a[101];
    cin.getline(a,sizeof(a));
    int m=strlen(a);
    reverse(a,a+m);
    puts(a);
}

sort函数

排序函数(默认从小到大)

Sort函数有三个参数:
​
(1)第一个是要排序的数组的起始地址。
​
(2)第二个是结束的地址(最后一位要排序的地址)
​
(3)第三个参数是排序的方法,可以是从大到小也可是从小到大,还可以不写第三个参数,此时默认的排序方法是从小到大排序。
​
Sort函数使用模板:
​
Sort(start,end,排序方法)
less<数据类型>()//从小到大排序
greater<数据类型>()//从大到小排序
例如  sort(start,end,less<int>())
用法直接插入即可

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值