c++中int型与string型相互转换
时间: 2023-06-05 13:47:24 浏览: 297
c++ 中可以使用 std::to_string 函数将 int 转换为 string。例如:
```
int num = 42;
std::string num_as_string = std::to_string(num);
```
可以使用 std::stoi 函数将 string 转换为 int。例如:
```
std::string num_as_string = "42";
int num = std::stoi(num_as_string);
```
注意,在c++11及以上的版本中使用stoi函数可能会因为string传入的非数字字符而产生错误,所以在使用stoi函数之前可能需要进行判断。
相关问题
c++中int类型转string
在C++中,将整型(int)转换为字符串(string)可以通过多种方式实现。以下是一些常用的方法:
1. **使用`std::to_string()`函数**:
```cpp
int num = 123;
std::string strNum = std::to_string(num);
```
`std::to_string()`是C++11引入的一个函数,可以直接将整数转换为字符串。
2. **模板方法**(如果你需要自己实现转换过程,比如处理负数或大整数):
```cpp
#include <sstream>
std::string intToStr(int num) {
std::ostringstream oss;
oss << num;
return oss.str();
}
```
使用`std::ostringstream`将整数转换为流,然后提取字符串。
3. **C风格转换**(适用于老式代码或者特定场景):
```cpp
int num = 123;
char buffer[20];
sprintf(buffer, "%d", num);
std::string strNum(buffer);
```
使用`sprintf`函数将整数格式化为字符串,注意需要确保足够的缓冲空间。
c++, int 转换成 string
在C++中,将整数(int 类型)转换成字符串(string 类型),可以使用标准库中的`std::to_string`函数。这个函数是C++11引入的,非常方便。以下是基本的用法:
```cpp
#include <iostream>
#include <string>
int main() {
int num = 42; // 一个整数示例
std::string strNum = std::to_string(num); // 将int转换为string
std::cout << "Int to String: " << strNum << std::endl;
return 0;
}
```
在这个例子中,`num`变量被转换成了字符串`strNum`。运行程序会打印出"Int to String: 42"。如果你需要在更早的C++版本中或者想避免头文件依赖,也可以手动实现字符数组或迭代器来转换。
```cpp
// 如果是老版本C++
char temp[20];
itos(num, temp, 10); // 需要在头文件<cstdlib>中包含itoa
// 或者手动遍历转换
std::string manualConvert(int num) {
std::ostringstream oss;
oss << num;
return oss.str();
}
```
阅读全文