string如何转换位char*类型
时间: 2023-08-01 22:15:11 浏览: 88
可以使用string类的c_str()函数将string类型转换为char*类型。c_str()函数返回一个指向字符串内部字符数组的指针,可以直接将其赋值给char*类型的变量。
例如:
```c++
#include <iostream>
#include <string>
int main() {
std::string str = "Hello, world!";
char* ch = const_cast<char*>(str.c_str());
std::cout << "str: " << str << std::endl;
std::cout << "ch: " << ch << std::endl;
return 0;
}
```
输出结果为:
```
str: Hello, world!
ch: Hello, world!
```
相关问题
c++将string转换成char*
可以通过string的成员函数c_str()来获取一个指向以空字符结尾的字符数组的指针,即char*类型的指针。
示例代码:
```c++
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "hello world";
char *cstr = &str[0];
cout << "cstr: " << cstr << endl;
return 0;
}
```
输出结果:
```
cstr: hello world
```
需要注意的是,将string转换为char*类型时,需要确保string不为空,否则指针可能会指向无效内存地址。
string类型如何转换成char*类型
可以使用string类型的成员函数c_str()将其转换为char*类型。例如:
string str = "hello";
char* c = str.c_str();
注意,返回的char*指针是常量指针,不能通过指针修改字符串的值。
阅读全文