C++ ostringstream用法详解

4 篇文章 0 订阅
本文详细介绍了C++标准库中的std::ostringstream类,包括其基本用法、数据类型转换、格式控制、清空重置和字符串拼接功能。
摘要由CSDN通过智能技术生成

std::ostringstream 是 C++ 标准库中的一个输出字符串流类,它可以用于将各种数据类型转换为字符串,并且支持格式控制和字符串拼接操作。

目录

1. 头文件

2. 基本用法

3. 将各种数据类型转换为字符串

4. 格式控制

5. 清空和重置

6. 拼接字符串


1. 头文件

#include <sstream>
#include <string>

2. 基本用法

最基本的用法是创建 std::ostringstream 对象并使用流操作符 << 将数据插入流中,然后通过 str() 方法获取流中的字符串表示。
std::ostringstream oss;
int num = 42;
double pi = 3.14159;
oss << "Number: " << num << ", Pi: " << pi;
std::string result = oss.str();

3. 将各种数据类型转换为字符串

std::ostringstream 可以将各种数据类型转换为字符串,包括整数、浮点数等。
std::ostringstream oss;
int num = 42;
oss << num;
std::string numStr = oss.str();

4. 格式控制

可以使用控制符控制字符串的格式,比如设置精度、固定小数位数等。
std::ostringstream oss;
double pi = 3.14159;
oss << std::fixed << std::setprecision(2) << pi;
std::string piStr = oss.str(); // 将输出保留两位小数

将num输出为20位的数据,不足20位的补0
long num = 11111;
oss << std::setw(20) << std::setfill('0') << num;

5. 清空和重置

可以使用 str("") 方法清空流中的内容,或者使用 str(newStr) 方法重置流中的内容为新的字符串。
std::ostringstream oss;
oss << "Hello, ";
oss.str(""); // 清空流中的内容
oss << "World!";
std::string result = oss.str(); // result 现在是 "World!"

6. 拼接字符串

可以通过多次向流中插入数据来实现字符串的动态拼接。
std::ostringstream oss;
oss << "Hello, ";
oss << "World!";
std::string result = oss.str(); // result 是 "Hello, World!"

  • 7
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值