问题描述
- 求解 char * 类型的实参与LPCWSTR类型的形参不兼容
-
MYSQL_ROW row=NULL;
row=mysql_fetch_row(res);
while(row!=NULL)
{
for(int i=0;i<fieldcount;i++)
{
TextOut(hdc,x,y,row[i],lstrlen(row[i]));
x += 50;
}
x = 0;
y += 20;
row=mysql_fetch_row(res);
}
强制转换后也是乱码,跪求如何解决
解决方案
LPCWSTR 即 Long Pointer to Constant Wide String,翻译过来就是一个“指向宽字符常量字符串的长指针”,基本上等价于 const wchar_t *
。
所以你要么直接用const wchar_t *
去处理,要么就参考这篇文章自己转一下:http://www.cnblogs.com/qiyebao/archive/2011/12/01/2270843.html
解决方案二:
lpcwstr是宽字符字符串。它不能直接跟char*转换,需要用API。比如CA2W,CW2A可以转换
时间: 2024-12-31 11:41:48