c++ char转为string
时间: 2024-08-22 09:01:58 浏览: 75
C++中string转换为char*类型返回后乱码问题解决
5星 · 资源好评率100%
在C++中,将`char`转换成`std::string`通常需要创建一个新的字符串并逐个添加字符。这里有几种常见的方法:
1. **使用标准库函数**:
```cpp
#include <string>
#include <cstring>
std::string strFromChar(char c) {
std::string result(1, c);
return result;
}
```
在这个例子中,我们创建了一个长度为1的新字符串,并将字符复制进去。
2. **直接构造**:
```cpp
std::string strFromChar(char c) {
return std::string(1, c);
}
```
这种方法更简洁,因为`std::string`构造函数可以直接接受一个字符作为输入。
3. **使用C-style string**:
```cpp
std::string strFromChar(char c) {
char temp[2]; // 为null terminator留一个位置
temp[0] = c;
temp[1] = '\0'; // 添加终止符
return temp;
}
```
请注意,在实际项目中,最好避免手动管理内存(如这里手动分配数组),除非非常明确需要这样做。
阅读全文