string和stringstream用法详解

avatar
作者
猴君
阅读量:1

string和stringstream是C++标准库中的两个类,用于处理字符串。

  1. string类: string类是一个可变长度的字符串类,提供了一系列操作字符串的方法。使用string类需要包含头文件

常用的string类方法有:

  • 构造函数:可以使用字符串字面值或者字符数组来构造一个string对象。
  • 拷贝构造函数:可以使用另一个string对象来构造一个新的string对象。
  • 赋值操作符:可以用一个字符串或者另一个string对象来给一个string对象赋值。
  • 连接操作符:可以用+运算符来连接两个字符串。
  • 比较操作符:可以用==、!=、<、>等运算符来比较两个字符串的大小。
  • 子字符串操作:可以使用substr()方法来获取原字符串的子串。
  • 插入和删除操作:可以使用insert()和erase()方法来插入和删除字符串中的字符。
  • 长度操作:可以使用length()或者size()方法来获取字符串的长度。
  • 查找操作:可以使用find()方法来查找字符串中的某个字符或者子串。

示例代码:

#include <string> #include <iostream>  int main() {     std::string str1 = "hello";     std::string str2 = "world";     std::string str3;      str3 = str1 + " " + str2;     std::cout << str3 << std::endl;      if (str1 == "hello") {         std::cout << "str1 is equal to hello" << std::endl;     }      std::cout << "Substring: " << str3.substr(6, 5) << std::endl;      str3.insert(5, " C++");     std::cout << "After insertion: " << str3 << std::endl;      str3.erase(11, 5);     std::cout << "After deletion: " << str3 << std::endl;      return 0; } 
  1. stringstream类: stringstream类是一个用于处理字符串流的类,可以将字符串转换为其他类型的数据,或者将其他类型的数据转换为字符串。使用stringstream类需要包含头文件

常用的stringstream类方法有:

  • 构造函数:可以使用一个初始字符串来构造一个stringstream对象。
  • 清空方法:可以使用clear()方法来清空stringstream对象的内容。
  • 字符串输入方法:可以使用str()方法来获取stringstream对象中的字符串。
  • 字符串输出方法:可以使用<<运算符来向stringstream对象中写入数据。
  • 数据转换方法:可以使用>>运算符来从stringstream对象中读取数据。

示例代码:

#include <iostream> #include <sstream>  int main() {     std::string str = "12345";     int num;     std::stringstream ss;      ss << str; // 将字符串写入stringstream对象     ss >> num; // 从stringstream对象读取数据      std::cout << "Number: " << num << std::endl;      ss.str(""); // 清空stringstream对象的内容     ss << "3.14";     float f;     ss >> f;      std::cout << "Float: " << f << std::endl;      return 0; } 

以上是string和stringstream类的简单用法介绍,更详细的用法可以参考C++的相关文档或者教程。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!