【C++】string对象的有关操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wingrez/article/details/87906428

说明:本文参考自《C++ Prime 第5版 中文版》的有关内容,由作者编辑整理。
本文简单地列出了一些string对象的常用操作。查看更详细地介绍,请阅读我的这篇文章【待完善】。

读写string对象

is>>s; //从输入流is中读取字符串赋给s,返回is
getline(is, s); //从输入流is中读取一行赋给s,返回is

写string对象

os<<s; //将s写到输出流os中,返回os

可用于string对象的操作符

s[n] //返回s中第n个字符的引用
s1+s2 //返回s1和s2连接后的结果
s1=s2 //用s2的副本代替s1中的内容
s1==s2 //如果s1和s2中的字符完全一样,返回true,反之,false
s1!=s2 //如果s1和s2中的字符不完全一样,返回true,反之,false
s1<s2、s1<=s2、s1>s2、s1>=s2 //利用字符在字典中的顺序进行比较

string对象的常用操作

s.append() //在s的末尾添加内容
s.insert() //插入字符

s.earse() //删除s中的字符
s.clear() //清除s的内容

s.assign() //为s赋新值
s.replace() //替换s中的字符
s.resize() //重新设置字符串的大小

s.empty() //返回s是否为空
s.size() //返回s中字符的个数
s.length() //返回s的长度,结果与s.size()相同
s.capacity() //不重新分配内存的话,可以保存多少元素
s.max_size() //返回s能保存的最大字符数
s.at() //按给定索引值返回字符
s.find() //在s中查找字符
s.rfind() //逆向查找最后一个与value值相等的字符
s.find_first_of() //查找s中第一个与value值相等的字符
s.find_first_not_of() //查找s中第一个与value值都不相等的字符
s.find_last_of() //查找s中最后一个与value值相等的字符
s.find_last_of() //查找s中最后一个与value值都不相等的字符
s.compare() //比较两个字符串
s.substr() //返回s的某个子字符串

数值转换

to_string() //返回数值的string表示
stoi() //返回s的起始子串表示的整数数值,返回值可以是int…
stol() //long…
stoll() //long long…
stoull() //unsigned long long
stof() //返回s的起始子串表示的浮点数数值,返回值可以是float…
stod() //double…
stold() //long double

大小写转换

使用 transform() 泛型算法

其它

s.begin() //返回一个迭代器,指向第一个字符
s.end() //返回一个迭代器,指向字符串的末尾(最后一个字符的下一个位置)
s.rbegin() //返回一个逆向迭代器,指向字符串的最后一个字符
s.rend() //返回一个逆向迭代器,指向字符串的开头(第一个字符的前一个位置)
s.c_str() //返回s的字符数组形式
s.data() //返回s的字符数组形式
s.copy() //将s的内容拷贝到一个字符数组中
s.swap() //交换两个字符串的内容

猜你喜欢

转载自blog.csdn.net/wingrez/article/details/87906428