标签:
1. 历史遗留问题及解决方案
(1)历史遗留问题
①C语言不支持真正意义上的字符串
②C语言用字符数组和一组函数实现字符串操作
③C语言不支持自定义类型,因此无法获得字符串类型
(2)解决方案
①从C到C++的进化过程引入了自定义类型
②在C++中可以通过类完成字符串类型的定义
2. 标准库中的字符串类
(1)C++直接支持C语言的所有概念
(2)C++语言中没有原来的字符串类型
(3)C++标准库提供了string类型(支持字符串的连接、大小比较、子串查找和提取、字符串的插入和替换等操作)
【编程实验】字符串类的使用
3. 标准库中的字符串类
(1)字符串流类:(<sstream>头文件)
①istringstream:字符串输入流
②ostringstream:字符串输出流
(2)字符串与数字的转换
string→数字 |
数字→string |
istringstream iss("123.45"); double num; iss>>num; |
ostringstream oss; oss<<543.21; string s = oss.str(); |
【编程实验】字符串和数字的转换
(3)string类的相关操作
①注意事项:
A. #include <string>。注意,不是<string.h>。
B. 分为string和wstring版。分别对应char和wchar_t
C. using std::string;或using std::wstring;
②string类的相关操作(点这里的链接)
【编程实验】用C++完成字符串的循环移位
4. 小结
(1)应用开发中大多数的情况都在进行字符串处理
(2)C++中没有直接支持原生的字符串类型
(3)标准库中通过string类支持字符串的概念
(4)string类支持字符串和数字的相互转换
(5)string类的应用使得问题的求解变得简单
标签:
原文地址:http://www.cnblogs.com/5iedu/p/5413945.html