第三十三课 C++ 中的字符串类
一、前言
- C 语言不支持真正意义上的字符串(后来是使用的字符串数组实现)
- C 语言用字符串数组和一组函数实现字符串操作
- C 语言不支持自定义类型,因此无法获得字符串类型
- 从 C 到 C++ 的进化过程引入了自定义类型
- 在 C++ 中可以通过类完成字符串类型的定义
- C++ 语言直接支持 C 语言的所有概念
- C++ 语言中没有原生的字符串类型
二、C++ 标准库的 string 类型
通过重载操作符实现的
- string 直接支持字符串连接
- string 直接支持字符串的大小比较
- string 直接支持子串的查找和提取
- string 直接支持字符串的插入和替换
字符串与数字的转换
-
标准库中提供了相关的类对字符串和数字进行转换
-
字符串流(ssteam)用于string 的转换
头文件
isstringstream-字符串输入流
ostringstream-字符串输出流
示例 string->数字 istringstream iss("12.3"); double num; iss >> num; 数字->string ostringstream oss; oss << 12.3; string str = oss.str();
三、小结
- 应用开发中大多数的情况都在进行字符串处理
- C++ 中没有直接支持原生的字符串类型
- 标准库中通过string类支持字符串的概念
- string 类支持字符串和数字的相互转换
- string 类的应用是的问题求解更简单