C++中的字符串类
一,历史遗留问题
(一)C语言不支持真正意义上的字符串
(二)C语言用字符数组和一组函数实现字符串操作
(三)C语言不支持自定义类型,因此无法获得字符串类型
二,解决方案
(一)从C到C++的进化过程引入了自定义类型
(二)在C++中可以通过类完成字符串类型的定义
三,标准库中的字符串类
(一)C++语言直接支持C语言的所有概念
(二)C++语言中没有原生的字符串类型
——---------------------------------------------——
(三)C++标准库提供了string类型
1,string直接支持字符串连接
2,string直接支持字符串的大小比较
3,string直接支持子串查找和提取
4,string直接支持子串查找和提取
5,string直接支持字符串的插入和替换
四,标准库中的字符串类
(一)标准库中提供了相关的类对字符串和数字进行转换
(二)字符串流类(sstream)用于string的转换
1, - 相关头文件
2,istringstream-字符串输入流
3,ostringstream-字符串输出流
(三)使用方法
1,string->数字
istringstream iss(“123.45”);
double num;
iss >> num;
2,数字->string
ostringstream oss;
oss << 543.21;
string s = oss.str();
四,小结
(一)应用开发中大多数的情况都在进行字符串处理
(二)C++中没有直接支持原生的字符串类型
(三)标准库中通过string类支持字符串的概念
(四)string类支持字符串和数字的相互转换
(五)string类的应用使得问题的求解变得简单