qstring转char*
时间: 2023-09-13 12:07:29 浏览: 102
可以使用QString类的toLocal8Bit()函数将Qstring对象转换为char*类型的字符串。例如:
```c++
QString str = "Hello, world!";
char* cstr = str.toLocal8Bit().data();
```
这里我们将QString对象"Hello, world!"转换为char*类型的字符串。toLocal8Bit()函数返回一个QByteArray对象,我们可以通过调用其data()函数获取指向char*类型字符串的指针。注意,这里返回的指针是临时的,如果需要在程序中长时间使用,需要将其复制到一个新的char*类型数组中。
相关问题
QString转char *
可以使用QByteArray类的data()函数将QString转换为char *。下面是一个示例代码:
```cpp
QString str = "Hello World";
QByteArray ba = str.toUtf8();
const char *c_str = ba.data();
```
在上面的代码中,我们首先将QString转换为UTF-8编码的QByteArray,然后使用data()函数获取其char *表示。
QString 转 char*
可以使用QString类的toUtf8()函数将QString转换为QByteArray,然后使用QByteArray类的data()函数获取char*指针,示例代码如下:
```
QString str = "Hello World";
QByteArray ba = str.toUtf8();
char *c_str = ba.data();
```
需要注意的是,如果要在函数外使用char*指针,需要保证该指针所指向的内存空间是有效的,否则可能会导致程序崩溃或数据损坏。
阅读全文