编译ERROR C2440: 无法从“const char [47]”转换为“LPCTSTR”

error C2440: “=”: 无法从“const char [47]”转换为“LPCTSTR”
作者:ImMcss 欢迎转载,请以超链接形式保留原文地址。

在开发过程中经常会遇到使用LPCTSTR型作为输入参数的API函数。直接传字符串会出来"C2440"编译错误。
例如代码:
LPCTSTR   StrKey="HARDWARE//DESCRIPTION//System//CentralProcessor//0";
会出现下面的编译错误:
error C2440: “=”: 无法从“const char [47]”转换为“LPCTSTR”。
看看LPCTSTR在winnt.h中的定义
        typedef LPCWSTR PCTSTR, LPCTSTR;
        typedef __nullterminated CONST WCHAR *LPCWSTR, *PCWSTR;
        typedef wchar_t WCHAR;
从定义可以看出LPCTSTR就是WCHAR指针,因为wchar_t定义的是宽字符集,所以做如下修正:
LPCTSTR   StrKey=(WCHAR *)_T("HARDWARE//DESCRIPTION//System//CentralProcessor//0");


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值