fetch-求解 char * 类型的实参与LPCWSTR类型的形参不兼容

问题描述

求解 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-08-31 00:04:31

fetch-求解 char * 类型的实参与LPCWSTR类型的形参不兼容的相关文章

visual studio-关于MFC问题报错,TCHAR*类型的实参与 HWND类型的形参不兼容

问题描述 关于MFC问题报错,TCHAR*类型的实参与 HWND类型的形参不兼容 刚刚接触MFC,声明了TCHAR类型的chBuf[ ],MessageBox(chBuf)这句代码在别人的程序里是对的,我的VS就会报错,显示"TCHAR * 类型的实参与 HWND类型的形参不兼容".这是为什么啊?求大神指教~ 解决方案 const char*类型的实参与LPCTSTR类型的形参不兼容 MFC"char *"类型的实参与"LPCTSTR"类型的形参

《C语言程序设计:问题与求解方法》——3.8节不同类型数据之间的类型转换

3.8 不同类型数据之间的类型转换 机器语言的算术运算指令比C语言算术表达式的限制更多.为了让计算机执行机器指令中的算术运算,通常不仅要求两个操作数有相同的长度(字节数),而且还要求数据的存储方式也相同.比如同是单精度浮点型数. 在C语言中,最好把同类型的常量值赋给同一类型的变量,或者使用同类型的常量和变量进行算术运算或关系运算. 然而在C语言程序中,允许在表达式中混合使用各种不同类型的数据.在一个表达式中,可以同时出现整型.浮点型.字符型的常量和变量.在这种情况下,C语言编译程序通常需要生成一

《C语言程序设计:问题与求解方法》——3.6节变量类型的进一步讨论

3.6 变量类型的进一步讨论 第2章已经介绍了int .float和char 变量类型.但是在实际编程工作中,int型的取值范围和float型的精度很可能满足不了应用的需要,下面再介绍三种新的基本变量类型. (1)double类型 如果float 类型变量的精度达不到在应用中的要求(精度超过6位.取值范围不够大或者不足够接近0),那么可以使用double型变量. 虽然C语言标准没有规定double型变量的取值范围和精度,但是IEEE 754标准规定:double型变量的上下限取值范围是–1.79

《C语言程序设计:问题与求解方法》——3.7节各种类型的常量

3.7 各种类型的常量与变量类似,常量实际上也有多种细分的类型.在C语言中变量需要先定义类型才能在语句中使用,而常量有默认的类型.数值末尾不添加类型说明符的整型常量默认为是int型的.超出int型范围的整型常量,默认为是long型的.也就是说,整型常量1234一定是int类型的,而整型常量123467(超过了32767)在int型最大值是32767的系统中是long型的.数值末尾不添加类型说明符的浮点型常量默认为是double型的.也就是说,任意一个浮点型常量,不论是小数形式表示的,还是指数形式

Java中String类型能转成int类型吗

问题描述 Java中String类型能转成int类型吗 一个String字符串 能否像 char类型一样 转换成int值 如果可以Java中怎么写 解决方案 看你用什么预言,各种预言都有转换函数,只要符合数值型,就可以正常转换 解决方案二: double?d?=?1.233; String?s1?=?String.valueOf(d); String?s2?=?s1.substring(0,?s1.indexOf("."))?+?s1.substring(s1.indexOf(&quo

spring mvc-SpringMVC中HandlerAdapter可支持多种类型的处理器,多种类型的处理器到底是什么

问题描述 SpringMVC中HandlerAdapter可支持多种类型的处理器,多种类型的处理器到底是什么 如题,处理器不就是Controller吗?怎么还有其他类型的处理器吗?望各位不吝赐教.谢谢 解决方案 Spring通过HandlerAdapter使处理器解耦,实处理器(Handler)不只是仅仅局限于控制器(Controller)这一种形式. 目前Spring可以支持,Servlet.HttpRequestHandler.ThrowawayController.Controller

NotSupportedException-无法将类型“System.DateTime”强制转换为类型“System.Object”

几张图就可以说明一切 2015-03-29 21:54:09,206 [77] ERROR log - System.NotSupportedException: 无法将类型"System.DateTime"强制转换为类型"System.Object".LINQ to Entities 仅支持强制转换 EDM 基元或枚举类型. 在 System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.ValidateAn

Swift类型创建之自定义一个类型详解

  这篇文章主要介绍了Swift类型创建之自定义一个类型详解,本文讲解了自定义原型.实现默认值.支持基本布尔型初始化.支持Bool类型判断.支持兼容各们各派的类型.完善OCBool的布尔基因体系等内容,需要的朋友可以参考下 小伙伴们,Swift中的Bool类型有着非常重要的语法功能,并支撑起了整个Swift体系中的逻辑判断体系,经过老码的研究和学习, Bool类型本身其实是对基础Boolean类型封装,小伙伴们可能咬着手指头问老码,怎么一会Bool类型,一会Boolean类型,其区别在于,前者是

sqlite-Sqlite datetime类型如何存取,什么类型取出可以在android对其进行格式操作

问题描述 Sqlite datetime类型如何存取,什么类型取出可以在android对其进行格式操作 创建表: db.execSQL("create table if not exists test_time" + "(_id INTEGER PRIMARY KEY AUTOINCREMENT, " + "name VARCHAR, age Datetime)"); 插入数据: ContentValues cv=new ContentValue