C++高级学习:第七节-string容器(上)

 [微信公众号:Cpp入门到精通]有完整六十六节知识,STL知识总结,欢迎关注学习!!

  string 是STL中的字符串容器,用于存储和操作字符串。它提供了丰富的成员函数和操作符重载,使得字符串的处理更加方便和高效。


我们接下来讲一些对string容器的操作:


1.初始化string对象:

首先要包含头文件string


#include<string>

使用默认构造函数创建一个空字符串。

string s1;

使用字符数组或字符串字面量初始化字符串。


string s2 = "Hello C++" ;

使用重复字符初始化字符串。

string s3 (5,'A');//输出5个A
  cout << "s3=" << s3 << endl;

结果如下:

s3=AAAAA

使用assign赋值:


string s1;
  s1.assign("Hello C++");
  cout << "s1=" << s1 << endl;

结果如下:


s1=Hello C++

2.基本操作:

访问单个字符:

以下四种方式,都是我们之前涉及到的:

string s1;
  s1.assign("Hello C++");
  cout << "s1=" << s1 << endl;
  cout << "第一个字符为:" << s1[0] << endl;
  cout << "第二个字符为:" << s1.at(1) << endl;
  cout << "第一个字符为:" << s1.front() << endl;
  cout << "最后一个字符为:" << s1.back() << endl;

结果如下:

s1=Hello C++
第一个字符为:H
第二个字符为:e
第一个字符为:H
最后一个字符为:+

获取字符串长度:

我们使用length()函数来获取字符串长度:


string s1;
  s1.assign("Hello C++");
  cout << "s1=" << s1 << endl;
  cout << "字符串的长度为:" << s1.length() << endl;

结果如下:


s1=Hello C++
字符串的长度为:9

拼接字符串:

使用+符号拼接字符串:


string s1;
  s1.assign("Hello C++");
  cout << "s1=" << s1 << endl;
  string s2 = { "欢迎关注公众号!" };
  cout << "s2=" << s2 << endl;
  string s3;
  s3 = s1 + s2;
  cout << "s3=" << s3 << endl;

结果如下:


s1=Hello C++
s2=欢迎关注公众号!
s3=Hello C++欢迎关注公众号!

使用“+=”运算符拼接字符串:


string s1;
  s1.assign("Hello C++");
  cout << "s1=" << s1 << endl;
  s1 += "欢迎关注公众号!";
  cout << "s1=" << s1 << endl;

结果如下:


s1=Hello C++
s1=Hello C++欢迎关注公众号!

使用append()函数拼接字符串:

string s1;
  s1.assign("Hello C++");
  cout << "s1=" << s1 << endl;
  string s2 = { "欢迎关注公众号!" };
  //把s2字符串拼接到s1后面
  s1.append(s2);
  cout << "s2=" << s2 << endl;
  cout << "s1=" << s1 << endl;

此时,s1字符串不再是"Hello C++",而是拼接后的"Hello C++欢迎关注公众号!"。


s1=Hello C++
s2=欢迎关注公众号!
s1=Hello C++欢迎关注公众号!

字符串指定个数拼接:


string s1;
  s1.assign("Hello C++");
  cout << "s1=" << s1 << endl;
  //把新字符串中从第二个位置的元素开始后的五个元素拼接到s1后面
  s1.append("Welcome", 1,5);
  cout << "s1=" << s1 << endl;

结果如下:


s1=Hello C++
s1=Hello C++elcom

如果频繁拼接字符串且性能敏感,考虑使用 append() 函数,因为它可以在原始字符串上直接操作而无需创建新的对象。

下节我们继续讲关于string容器的其他操作,感谢观看!欢迎各位的点赞与关注!您的点赞和关注是我学习更新的动力!

  • 16
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值