string容器

本文详细介绍了C++中字符串类的构造函数、赋值操作(包括常规操作和assign方法)、拼接(+和append)、查找与替换、比较、字符存取、插入与删除以及子串提取的方法。
摘要由CSDN通过智能技术生成

头文件  #include<string>

1.构造函数

string();     //创建一个空的字符串,例如:string str;

string(const  char  *s);      //使用字符串s初始化  string  s2(s);2

string(const string &str);   //使用一个string对象初始化另一个string对象   string  s3(s2);

string(int n,char  c);   //使用n个字符c初始化    string  s4(n,'c'); s4为n个c字符

2.赋值操作

第一种:“=”操作

str="字符串"     str1=str2        str3='单个字符'

第二种:assign操作

str4.assign("字符串")      str5.assign("字符串",n)//将字符串前n个字符赋值给str5

str6.assign(str)  //将str赋值给str6

3.字符串拼接  // 实现在字符串末尾拼接字符串

第一种:“+=”操作

str+="字符串"        str+="单个字符 "       str+=str1

第二种:append 操作

str.append("字符串")     str.append("字符串",n)// 将字符串前n个字符拼接到str5末尾

str.append(str1)// 将str1拼接到str末尾    str.append(str1,n,len) //将str1从第n个位置截取len个字符拼接到str末尾

4.查找和替换

int p=str.find("字符串")  //查找字符串在str中的位置并返回位置下标,查找不到返回-1;

rfind和find区别  rfind是从右向左查找  find是从左向右查找

str.replace(pos,n,s)//从pos位置起n个字符,替换为字符串s

例如:str="asdfghj";  str.replace(1,3,"1111")  ;   那么str="a1111ghj";

5.字符串比较

str1.compare(str2)  //比较str1和str2,若str1>str2,则返回值大于0,若str1=str2 ,则返回值等于0,小于同理;

6.字符存取//可以读和写

第一种:通过[ ]方式  str[ i ]就是str中第i个字符   

 第二种:通过at方式   str.at( i )就是str中第i个字符

7.插入和删除

str.insert(pos,"字符串") 

str.erase(pos,n)//从pos位置删除n个字符

8.子串

str1=str2.substr(pos,n)//从pos位置截取n个字符

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Sunset Glow801

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

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

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

打赏作者

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

抵扣说明:

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

余额充值