char* 转std::string
时间: 2023-12-25 17:27:51 浏览: 283
可以使用std::string的构造函数或者直接赋值的方式将char*转换成std::string。具体方法如下:
1.使用构造函数
```cpp
char* p = "Hello";
std::string str(p); // 使用构造函数将char*转换成std::string
```
2.直接赋值
```cpp
char* p = "Hello";
std::string str = p; // 直接将char*赋值给std::string
```
需要注意的是,如果char*指向的是一个字符串常量,那么不能通过char*修改字符串的值,否则会导致未定义的行为。因此,在将char*转换成std::string时,需要确保char*指向的是一个可读的字符串。
相关问题
char * 转std::stringstream
可以使用std::stringstream的构造函数来将char *转换为std::stringstream。例如:
```
char* str = "Hello world";
std::stringstream ss(str);
```
这将创建一个std::stringstream对象,其初始内容为"Hello world"。然后您可以使用std::stringstream对象中的方法来处理和操作该字符串。
C ++ char* 转 std::string
可以使用std::string的构造函数将char*转换为std::string,如下所示:
```cpp
const char* cstr = "Hello, world!";
std::string str(cstr);
```
也可以使用std::string的assign函数将char*转换为std::string,如下所示:
```cpp
const char* cstr = "Hello, world!";
std::string str;
str.assign(cstr);
```
阅读全文