C++ 中的 std::istringstream:从字符串中读取数据

std::istringstream 是 C++ 标准库中的一个类,它允许你将字符串视为输入流,并像从文件或标准输入读取数据一样从中提取数据。

如何使用 std::istringstream

  1. 包含头文件: 首先,你需要包含 <sstream> 头文件,其中包含 std::istringstream 类的定义:

    cpp #include <sstream>

  2. 创建 std::istringstream 对象: 然后,你可以创建一个 std::istringstream 对象,并将要读取的字符串传递给它的构造函数:

    
    int main() {       std::string str = 'Hello World!';       std::istringstream iss(str);
    
        // ...   }   ```
    
    
  3. 从流中提取数据: 创建 std::istringstream 对象后,你可以使用提取运算符 >> 从中读取数据,就像使用 std::cin 一样。例如,你可以使用以下代码从字符串中提取单词:

    cpp std::string word; while (iss >> word) { std::cout << word << std::endl; }

示例

以下是一个完整的示例,演示如何使用 std::istringstream 从字符串中读取数据:cpp#include #include #include

int main() { std::string str = 'Hello World! 123 4.56'; std::istringstream iss(str);

std::string word;    int number;    double decimal;

// 读取字符串    iss >> word; // 读取 'Hello'    std::cout << 'Word: ' << word << std::endl;

// 读取整数    iss >> number; // 读取 123    std::cout << 'Number: ' << number << std::endl;

// 读取浮点数    iss >> decimal; // 读取 4.56    std::cout << 'Decimal: ' << decimal << std::endl;

return 0;}

总结

std::istringstream 是 C++ 中一个强大的工具,可以方便地从字符串中读取数据。它提供了一种灵活且类型安全的方式来解析和处理字符串,使其成为许多字符串处理任务的理想选择。

C++ 中的 std::istringstream:从字符串中读取数据

原文地址: http://www.cveoy.top/t/topic/ci8D 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录