c++学习笔记--C++Primer第4版--标准库类型string
2013-03-04 14:39
417 查看
string类型
一、概述
定义:支持长度可变的字符串,C++标准库将负责管理与存储字符相关的的内存,以及提供各种有用的操作。
目的:满足对字符串的一般应用。
需要导入string类库头文件,声明标准库命名空间,代码如下:
二、初始化
4种方式,代码如下:
string s1; //默认构造函数,s1为空串
string s2(s1); //将s2初始化为s1的一个副本
string s3("hello"); //将s3初始化为一个字符串字面值副本
string s4(n, 'c'); //将s4初始化为字符'c'的n个副本,如:string s4(3, 'c')----"ccc"
三、string对象的操作
常用操作如下:
1、string::size_type
size()成员函数返回的是string::size_type类型的值。不要把size的返回值赋给一个int变量。
2、string关系操作符,自行理解
3、string对象的赋值,自行理解
4、两个string对象相加,自行理解
5、和字符串字面值的连接
当进行string对象和字符串字面值混合连接操作时,+操作符的左右操作数必须至少有一个是string类型的:
以下一段代码帮助大家了解以下知识点:
一、概述
定义:支持长度可变的字符串,C++标准库将负责管理与存储字符相关的的内存,以及提供各种有用的操作。
目的:满足对字符串的一般应用。
需要导入string类库头文件,声明标准库命名空间,代码如下:
#include <string> using std::string
二、初始化
4种方式,代码如下:
string s1; //默认构造函数,s1为空串
string s2(s1); //将s2初始化为s1的一个副本
string s3("hello"); //将s3初始化为一个字符串字面值副本
string s4(n, 'c'); //将s4初始化为字符'c'的n个副本,如:string s4(3, 'c')----"ccc"
三、string对象的操作
常用操作如下:
s.empty() //判定s是否为空,返还布尔值 s.size() //返回s中字符的个数 s //下标操作,返回第n个字符 s1 + s2 //连接成一个新字符串 s1 = s2 //赋值 s1 == s2 //比较操作
1、string::size_type
size()成员函数返回的是string::size_type类型的值。不要把size的返回值赋给一个int变量。
2、string关系操作符,自行理解
3、string对象的赋值,自行理解
4、两个string对象相加,自行理解
5、和字符串字面值的连接
当进行string对象和字符串字面值混合连接操作时,+操作符的左右操作数必须至少有一个是string类型的:
string s1 = "hello"; string s2 = "world"; string s3 = "hello" + "world"; // 错误,两边都是字符串字面值 string s4 = s1 + "world"; //正确 string s5 = s1 + "a" + "b"; //正确,s1 + "a"将返回一个新的string对象,再与"b"进行连接 string s6 = "a" + "b" + s1; //错误
以下一段代码帮助大家了解以下知识点:
#include <string>; #include <iostream> using namespace std; string s1("Hello World!"); //初始化字符串s1 string::size_type cnt = 0; //保存目标字符个数 for(string::size_type index = 0; index != s1.size(); ++index) { if (s1[index] == 'o') ++cnt; } cout << cnt << " char 'o' in " << s1 << endl;
相关文章推荐
- c++学习笔记--C++Primer第4版--标准库类型vector
- 【C++学习笔记】标准库类型string
- C++学习笔记(六):复杂数据类型(string、容器和STL)
- C++学习:最全标准库类型string的使用
- 2012/1/11 《C++ Primer Plus》第四章:复合类型 学习笔记
- string,vector标准库类型(上)(c++ primer 复习)
- C++学习笔记--标准库类型(vector,iterator,bitset)(三)
- 2012/1/11 《C++ Primer Plus》第四章:复合类型 学习笔记
- C++ Primer学习笔记:C++ 常用标准类型小结
- C++学习笔记--标准库类型(vector,iterator,bitset)(一)
- C++基础的不能再基础的学习笔记——标准库类型string
- C/C++学习笔记33:C++中标准库string类型
- c++学习笔记--C++Primer第4版--迭代器iterator
- c++学习笔记之复合类型(c++ primer plus)
- C++学习笔记--标准库类型(vector,iterator,bitset)(二)
- C++ Primer 学习笔记——第3章:标准库类型 string
- C++学习笔记-----std::string的=,+,+=对int,char类型操作数的支持
- c++ primer第五版(中文)习题答案 第三章第二节-标准库类型string
- C++ Primer 学习笔记_5_变量和基本类型(续2)
- C++学习笔记(二)(标准库string类型)