C ++中的std :: string类

C ++在其定义中具有一种将字符序列表示为class对象的方式。此类称为std ::字符串。字符串类将字符存储为字节序列,并具有允许访问单字节字符的功能。

std ::字符串与字符数组

字符数组只是可以用空字符终止的字符数组。字符串是一个类,用于定义表示为字符流的对象。

 

1240
 

字符数组的大小必须静态分配,如果需要,则无法在运行时分配更多内存。如果使用字符数组,则会浪费未使用的分配内存。如果是字符串,则动态分配内存。可以在运行时按需分配更多的内存。由于没有预分配内存,因此不会浪费内存。

如果是字符数组,则存在数组衰减的威胁。当字符串表示为对象时,不会发生数组衰减。

实现字符数组是快比的std :: string。与实现相比,字符串比字符数组要慢。

字符数组没有提供太多内置函数来操作字符串。字符串类定义了许多功能,这些功能允许对字符串进行多种操作。

字符串操作

输入功能

 

1240
 

1. getline():-此函数用于将用户输入的字符流存储在对象存储器中。

2. push_back():-此函数用于在字符串末尾输入字符。

3. pop_back():-从C ++ 11(用于字符串)引入,此函数用于删除字符串中的最后一个字符。

容量功能

4. Capacity():-此函数返回分配给字符串的容量,该容量可以等于或大于字符串的大小。分配了额外的空间,以便在将新字符添加到字符串时,可以高效地完成操作。

5. resize():-此函数更改字符串的大小,大小可以增加或减少。

6.length():-此函数查找字符串的长度

7.shrink_to_fit():-此函数减小字符串的容量,使其等于字符串的最小容量。如果我们确定不必再添加任何字符,则此操作对于节省额外的内存很有用。

迭代器功能

 

1240
 

8. begin():-此函数将迭代器返回到字符串的开头。

9.端() :-该函数返回一个迭代到结束的字符串。

10. rbegin():-此函数返回指向字符串末尾的反向迭代器。

11. rend():-此函数返回指向字符串开头的反向迭代器。

操作功能

12. copy(“ char array”,len,pos):-此函数将子字符串复制到其参数中提到的目标字符数组中。它需要3个参数,目标char数组,要复制的长度以及字符串中的开始位置才能开始复制。

13. swap():-此函数将一个字符串与另一个字符串交换。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值