3.字符串

一、基本介绍

1.基本运用

string str;
str = "China";
cout<<str<<endl;

2.加法运算

string s1 = "Chi", s2 = "na";
string str = s1 + s2;
cout<<str<<endl;

字符串加法表示字符串的连接

3.字典序

设存在两个字符串 s 1 , s 2 s1,s2 s1,s2,长度分别为 n , m ( n ≤ m ) n,m(n\leq m) n,m(nm)。字符串比较时以 A S C I I ASCII ASCII码值大小为依据,逐位进行比较排序。若前 n n n位相同,则长度更长的字符串更大。

字符串比较时可以直接使用比较运算符来进行操作。

string s1 = "the", s2 = "these";
cout<<(s1 < s2)<<endl;//true

二、基本函数运用

1.获取字符串长度

string str = "China";
cout<<str.size()<<endl;//5
cout<<str.length()<<endl;//5

2.查找子串位置

string str = "China";
cout<<str.find("in")<<endl;//2

3.插入字符串

string str = "China";
str.insert(2,"someone");
cout<<str<<endl;//Chisomeonena

4.截取字符串

第一个参数表示起始位置,第二个参数表示截取长度

string str = "Chinese people";
cout<<str.substr(2)<<endl;//inese people
cout<<str.substr(2,4)<<endl;//ines

5.替换字符串

第一个参数表示起始位置,第二个参数表示替换长度(原字符串),第三个参数表示新的字符串

string str = "Chinese people";
cout<<str.replace(0,7,"American")<<endl;//American people

6.翻转字符串

reverse(arr+i,arr+j)反转数组 i ∼ j − 1 i\sim j-1 ij1上的所有元素(不只是字符串)

#include 
#include 

using namespace std;
int main()
{
    string str="China";
    reverse(str.begin(),str.end());
    cout<<str<<endl;//anihC
    
    return 0;
}

三、读入

1.读取一个字符串

string str;
cin>>str;

2.读取一整行

string str;
getline(str);

你可能感兴趣的:(字符串,c++)