读书人

QString:sprintf一个很奇怪的有关问题

发布时间: 2012-02-17 17:50:42 作者: rapoo

QString::sprintf一个很奇怪的问题

C/C++ code
std::wstring ws = L"一二三abc四五六";QString qs = QString::fromStdWString(ws);char* p = qs.toUtf8().data();QString qs2;qs2.sprintf("%s", p);    // aqs2.sprintf("%s", qs.toUtf8().data())    // b


以上代码,a处qs2得到的是乱码,b处才是正常的字符串,这是什么原因呢?

[解决办法]
提示:

临时变量 的生命周期
野指针
[解决办法]
提示
char* p = qs.toUtf8().data();
用错了

读书人网 >QT开发

热点推荐