最近需要用qt调用VS写的dll,遇到一些接口问题,在此记录,有误欢迎指出
// unsigned char path[] 转 string unsigned char path[] = “C:/DeskTop/文件名.后缀”; char* buf = reinterpret_cast(path); string pathStr(buf); cout << pathStr.c_str() << endl;
Qt Creator:
// QString 转 char*, 再转 string QString filePath = “C:/DeskTop/文件名.后缀”; string str1= filePath.toStdString(); char *str2=const_cast(str1.c_str()); qDebug() << str2; string str3(str2); qDebug() << str3.c_str();
// QString 转 char[] QString filePath = “C:/DeskTop/文件名.后缀”; char pathTemp[filePath.length()]; strcpy(pathTemp, filePath.toUtf8().data()); // 这里有的教程写的是 .toLatin1,但是好像汉字不行,具体忘记了,谁有空可以自己测一下 qDebug() << pathTemp;


![[C++编程小技巧] string QString char* unsigned char[] 转换 [C++编程小技巧] string QString char* unsigned char[] 转换](http://www.mshxw.com/aiimages/31/849472.png)
