C++将string数组转换为char数组
时间: 2023-04-11 11:01:38 浏览: 94
你可以使用strcpy函数将string数组转换为char数组。例如,假设你有一个名为str的string数组和一个名为ch的char数组,你可以使用以下代码将其转换:
strcpy(ch, str.c_str());
相关问题
C++将string转换为char数组
可以使用string类中的c_str()函数将string类型转换为char数组。
例如:
```c++
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "Hello World!";
char char_arr[str.size() + 1]; // 加1是为了给'\0'留出空间
strcpy(char_arr, str.c_str()); // 使用c_str()函数将string类型转换为char数组
cout << char_arr << endl;
return 0;
}
```
输出结果为:
```
Hello World!
```
需要注意的是,使用c_str()函数返回的指针指向的是一个临时的字符数组,其生命周期与string对象相同。因此,如果在char数组中需要长期保存string对象中的内容,需要将其复制到新的内存空间中。
C++将char*数组转换为string
可以使用string的构造函数来将char*数组转换为string,示例如下:
```c++
char arr[] = "Hello, World!";
string str(arr);
```
这里使用了string的构造函数,将char*数组作为参数传入,构造出一个string对象。注意,如果char*数组中包含了空字符'\0',那么转换后的string对象只会包含空字符前面的字符,后面的字符将被忽略。