C++如何把数组转成字符串
时间: 2023-07-04 22:20:07 浏览: 144
在 C++ 中,可以使用 `std::ostringstream` 对象将数组转换为字符串。具体实现可以参考以下代码示例:
```
#include <iostream>
#include <sstream>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
std::ostringstream oss;
for (int i = 0; i < n; i++) {
oss << arr[i] << " ";
}
std::string str = oss.str();
std::cout << str << std::endl;
return 0;
}
```
这里使用 `std::ostringstream` 对象 `oss` 将数组 `arr` 中的元素转换为字符串,并存储在变量 `str` 中。在循环中,使用 `oss << arr[i] << " ";` 将每个元素转换为字符串,并添加一个空格。最终,使用 `oss.str()` 方法将 `oss` 对象转换为字符串。
相关问题
C++ 中char数组转成字符串
可以使用C++标准库中的string类来实现将char数组转换成字符串。具体代码如下:
```c++
char charArray[] = {'H', 'e', 'l', 'l', 'o', '\0'}; // 以'\0'结尾的字符数组
std::string str(charArray); // 将char数组转换成字符串
```
注意,转换的字符数组需要以'\0'结尾,否则转换后的字符串可能出现意想不到的错误。
c++将char数组转换成字符串
使用C语言中的字符串库函数strcpy()可以将char数组转换为字符串。
例如,有一个char数组arr,需要将它转换为字符串str:
```c
char arr[] = {'H', 'e', 'l', 'l', 'o', '\0'};
char str[10];
strcpy(str, arr);
```
其中,第一行定义了一个包含字符'H'、'e'、'l'、'l'、'o'和空字符'\0'的char数组arr。
第二行定义了一个长度为10的char数组str,用于存储将arr转换后的字符串。
第三行使用strcpy()函数将arr的值复制到str中,此时str中存储的就是字符串"Hello"。
需要注意的是,char数组必须以空字符'\0'结尾才能被当做字符串处理,否则strcpy()函数会继续复制数组中的值直到遇到空字符为止。