QString转为LPSTR,LPWSTR

  使用Win32 api的时候,调用接口函数会涉及QString与LPSTR,LPWSTR的转换。

 

1、QString转为LPSTR(以函数参数形式传递)

(LPSTR)str.toStdString().c_str()

 

2、QString转为LPWSTR(以函数参数形式传递)

(LPWSTR)str.toStdWString().c_str()

  

  ps:以函数参数传递,这样做的类型转换是正确的,但是以变量赋值的形式,却会是乱码。暂时还未找到原因,如果有知道的朋友,欢迎留言告知,谢谢。

  变量赋值的形式如:

LPWSTR szStr = (LPWSTR)str.toStdWString().c_str();  //szStr是乱码

 

    

posted @ 2020-05-21 17:05  绿筱  阅读(2068)  评论(0编辑  收藏  举报