把string转化为char数组
时间: 2024-02-05 22:03:29 浏览: 80
可以使用string类的成员函数c_str()来获取一个指向该字符串的字符数组指针,然后可以使用该指针来访问和修改该字符串的字符数组。详细代码如下:
```c++
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "Hello world!";
const char* charArr = str.c_str();
cout << charArr << endl; // 输出:Hello world!
return 0;
}
```
请注意:在修改char数组时要确保该指针指向的字符数组是可写的,否则可能导致运行时错误。
相关问题
把汉字string转化为char数组c++
可以使用以下代码将汉字字符串转换为char数组:
```c++
#include <iostream>
#include <cstring>
using namespace std;
int main() {
string str = "你好,世界!";
char c[str.length() + 1];
strcpy(c, str.c_str());
for(int i = 0; i < str.length(); i++) {
cout << c[i] << " ";
}
return 0;
}
```
输出结果为:
```
你 好 , 世 界 !
```
C语言string转化为char数组
C语言中的string实际上是一个字符数组,因此将其转换为char数组可以直接使用strcpy()函数进行赋值操作。示例代码如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "hello world";
char arr[strlen(str) + 1];
strcpy(arr, str);
printf("String: %s\n", str);
printf("Char array: ");
for (int i = 0; i < strlen(str); i++) {
printf("%c", arr[i]);
}
return 0;
}
```
输出结果为:
```
String: hello world
Char array: hello world
```
阅读全文
相关推荐














