c++格式化字符串.怎么用
时间: 2024-06-17 22:01:05 浏览: 104
C++格式化字符串,也称为`std::format`或`C++20`中的格式化I/O,是C++20标准引入的一种强大的字符串格式化方法。它提供了一种更加灵活且安全的方式来替换旧有的`printf()`和`stringstream`等格式化输出方式。使用`std::format`,你可以直接在模板字符串中嵌入变量并指定它们的格式,无需担心内存溢出和类型不匹配的问题。
以下是一个基本的使用示例:
```cpp
#include <iostream>
#include <fmt/core.h> // 引入格式化库
int main() {
int age = 25;
double pi = 3.1415926;
std::string formatted_str = fmt::format("My name is {}, and I am {} years old.", "Alice", age);
std::cout << formatted_str << "\n"; // 输出: My name is Alice, and I am 25 years old.
std::cout << fmt::format("{:.2f}", pi) << "\n"; // 输出: 3.14
return 0;
}
```
在这个例子中:
- `fmt::format`是一个模板函数,它接受一个格式字符串和一系列可替换的占位符(`{}`)。
- 占位符后面可以跟一个格式说明符,如`.2f`表示保留两位小数的浮点数格式。
- `fmt::to_string`等函数可以将不同类型的值转换为格式化的字符串。
阅读全文