没有合适的资源?快使用搜索试试~ 我知道了~
首页详解C++ string字符串类
详解C++ string字符串类
5星 · 超过95%的资源 21 下载量 192 浏览量
更新于2023-03-03
评论
收藏 75KB PDF 举报
C++字符串string类 在C语言里,字符串是用字符数组来表示的,而对于应用层而言,会经常用到字符串,而继续使用字符数组,就使得效率非常低. 所以在C++标准库里,通过类string从新自定义了字符串。 头文件: #include <string> string直接支持字符串连接 string直接支持字符串的大小比较 string直接支持子串查找和提取 string直接支持字符串的插入和替换 string同时具备字符串数组的灵活性,可以通过[ ]重载操作符来访问每个字符。 字符串数组和string对象尽量不要混合使用,会带来意想不到的问题 例如,通过字符串数组赋值给string对象: st
资源详情
资源评论
资源推荐
详解详解C++ string字符串类字符串类
C++字符串string类
在C语言里,字符串是用字符数组来表示的,而对于应用层而言,会经常用到字符串,而继续使用字符数组,就使得效率非常低.
所以在C++标准库里,通过类string从新自定义了字符串。
头文件: #include <string>
string直接支持字符串连接
string直接支持字符串的大小比较
string直接支持子串查找和提取
string直接支持字符串的插入和替换
string同时具备字符串数组的灵活性,可以通过[ ]重载操作符来访问每个字符。
字符串数组和string对象尽量不要混合使用,会带来意想不到的问题
例如,通过字符串数组赋值给string对象:
string str;
char s[]="12345";
str.reserve(5);
for(int i=0;i<5;i++)
str[i]=s[i];
cout<<“str:”<<str<<endl;
cout<<“length():”<<str.length()<<endl;
打印运行:
str:
length():0
这是因为,使用for循环拷贝,仅仅改变了str的串内容,并没有改变str的length长度.
string类常用的构造函数有类常用的构造函数有:
string类常用的构造函数有:
string str; //生成一个空字符串
string str (“ABC”) //等价于 str=”ABC”<br>
string str (“ABC”, strlen) // 将”ABC”存到str里,最多存储前strlen个字节
string s(“ABC”,stridx,strlen) //将”ABC”的stridx位置,做为字符串开头,存到str里.且最多存储strlen个字节.
string s(strlen, ‘A’) //存储strlen个’A’到str里
string类常用的成员函数有类常用的成员函数有:
str1.assign("ABC"); //清空string串,然后设置string串为"ABC"
str1.length(); //获取字符串长度
str1.size(); //获取字符串数量,等价于length()
str1.capacity(); //获取容量,容量包含了当前string里不必增加内存就能使用的字符数
str1.resize(10); //表示设置当前string里的串大小,若设置大小大于当前串长度,则用字符