我们知道string可以构造一个字符串变量,那么它的操作有哪些呢。它包含在string库中(不是string.h没有.h),它可以和定义一个字符一样定义一个字符串变量,而且强大的C++还内置了各种函数,基本实现不用再手写操作函数。而且可以进行字典序的比较和串操作。

一、对位和对串操作

如何或者string串中的某一位字符呢,我们使用数组下面的方式就可以访问。

例如

string s = "abcdef";
cout << s[0] << endl;

结果就应该是输出了字符'a',同时string类型也可以直接加上另一个字符串,例如

string a = "abc", b = "bcd";
a = a + b;
cout << a << endl;

结果应该输出字符串“abcbcd”。

二、内置函数

在string类型中其实包括了很多函数,例如

 1     string s = "a";
 2     s.append(2,'b');//s.append(n,c);在s串后面加入n个c字符(append还有其他用法,详情可百度)
 3     s.erase(s.begin(),s.begin()+2);//s.erase(l,r);删除某个区间,l,r都为迭代器
 4     s.erase(it);//删除一个字符,it为迭代器
 5     s.size();//返回字符串s的长度大小
 6     s.begin();//返回首位置的迭代器
 7     s.end();//返回末位置的迭代器
 8     s.insert(it,ch);//在it位置插入ch字符,it为迭代器
 9     s.resize(len,c);//把字符串当前大小置为len,并用c填充不足的部分
10     s.empty();//判断是否为空串
11     s.length();//返回字符串的长度
12     s.max_size();//返回当前系统string对象可存放的最大长度
13     s.capacity();//返回当前容量
14     s.at(k);//返回第k+1个字符(该用法会坚持是否越界)
15     s.c_str();//返回C字符串的指针,内容为s串
16     s.find(s1);//查找s中是否包含s1,并返回头位置,找不到则返回string::npos
17     s.replace(k,x,ch);//从k位置开始,把后面的x个元素替换为ch(还有很多其他用法)
18     s.swap(s2);//交换两个string字符串

而且string还支持直接比较两个字符串的大小(内置字典序比较方式)。除了上面写了的外,string其实还有很多函数。

emmm写到一半发现了个讲的很全的博客,不写了 ==

C++string类型详解

C++中string的用法相关推荐

  1. 标准C++中string类用法总结

    2019独角兽企业重金招聘Python工程师标准>>> 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好 ...

  2. C++中String 的用法 string 字符串的使用方法

    转载自百度经验 :https://jingyan.baidu.com/article/20b68a8854f919796dec6265.html?qq-pf-to=pcqq.c2c string类的常 ...

  3. lua中string.find用法

    在lua的string.find方法用法为 string.find(s1, s2) 含义为查找字符串s2在s1中出现的位置,如果找不到,返回nil. 但这个方法实际上是以正则表达式来解释s2的,所以 ...

  4. java中String的用法详解

    在这里先分别对String.StringBuffer.StringBuilder进行解析,在比较三者异同 String String类:代表字符串.Java程序中所有的字符串字面值(如"fd ...

  5. 总结了C#中string.format用法。分享给大家供大家参考。具体分析如下:

    String.Format 方法的几种定义: String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项. Str ...

  6. 字符串分割--java中String.split()用法

    文章转自:http://yangzb.iteye.com/blog/1824761 在java.lang包中有String.split()方法,返回是一个数组.   1. "."和 ...

  7. Java中String的用法

    删除字符串中所有出现的字符 String a="123444344";//12444a=a.replaceAll("34",""); 删除字 ...

  8. c++中string常用用法详解(+例子部分代码)

    小白笔记 文章目录 前言 一.string 字符串赋值 二.string 字符串的拼接 三.string 查找和替换 四.string 字符串比较(挨个字符的ASCLL码来进行对比) 五.string ...

  9. C#中string.format用法详解 格式字符串

    string.Format对C#字符串格式化 String.Format 方法的几种定义: String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 ...

最新文章

  1. 你给需求文档,AI就能帮你开发安卓App
  2. 开元弧焊机器人编程_焊接机器人的技术现状和展望
  3. C核心技术手册(五)
  4. ubuntu20.04运行海商王2
  5. 计算机应用基础知识点提纲,计算机应用基础复习提纲
  6. 聊聊推荐系统中的偏差
  7. python编程技术总结_大数据技术学习之Spark技术总结
  8. FM算法及FFM算法
  9. Linux:(ubuntu)命令行下显示方框的问题
  10. Python 面向对象 —— __init_ 与 __new__
  11. 【数据结构和算法笔记】数组(数组的储存方式和特殊矩阵的压缩储存)
  12. 如何获取华为网络安全考试题库?
  13. 面试 http://mp.weixin.qq.com/s/p5mXVzixSDZZ6o9DpU5Xaw
  14. 2022年全球及中国血清降钙素原市场专项调研与竞争调查分析报告
  15. UOS 操作蓝牙、wifi开关
  16. C# winform 检测网络是否畅通 检测
  17. OSChina 周日乱弹 —— 阿里爸爸辞职了
  18. Cisco ❀ VRF(虚拟路由转发表)
  19. K-Means聚类算法的实现(C语言)
  20. 衍生品市场 Chap1-3 学习笔记

热门文章

  1. Exchange 服务器可支持性矩阵
  2. POJ1256 (C++ compare函数)
  3. “猫癣”集团借IE7新漏洞再掀风浪
  4. 用python爬取知识星球
  5. Windows Server Failover Cluster 使用的协议和端口
  6. iOS 自己封装的SDK 打包与合并,新手教程!!!
  7. Visual Studio 2013 Xamarin for iOS 环境搭建
  8. Qt控件中的属性sizePolicy说明
  9. 开始好好学习了,生活得有追求~~~
  10. Windows 7关闭和开启系统休眠