已知道char* 以及长度,如何将字符串转成QString
时间: 2023-11-28 17:50:29 浏览: 163
Qt中QString转换成const char * ()、QByteArray等方法
可以使用QString的构造函数QString(const QChar *unicode, int size),其中unicode是指向包含字符串的QChar数组的指针,size是该数组中元素的数量。因此,可以使用以下代码将char*转换为QString:
```c++
const char* myString = "Hello World";
int length = strlen(myString);
QChar* unicode = new QChar[length];
for(int i=0; i<length; ++i) {
unicode[i] = myString[i];
}
QString myQString(unicode, length);
delete[] unicode;
```
上述代码首先计算出char*字符串的长度,然后创建一个QChar数组并将char*字符串中的每个字符复制到数组中。最后,使用该数组调用QString构造函数来创建QString对象。注意,在使用完unicode数组后,需要使用delete[]运算符将其删除以避免内存泄漏。
阅读全文