MessageBox函数的参数中前面为什么要加个L,如果是表示类型的话总共有哪几种?
voidCsecondMFCDlg::OnBnClickedFirstButton(){//TODO:在此添加控件通知处理程序代码this->MessageBox(L"这...
void CsecondMFCDlg::OnBnClickedFirstButton()
{
// TODO: 在此添加控件通知处理程序代码
this->MessageBox(L"这是我添加按钮消息后的结果!");
} 展开
{
// TODO: 在此添加控件通知处理程序代码
this->MessageBox(L"这是我添加按钮消息后的结果!");
} 展开
3个回答
展开全部
L"...." 表示引号里的字符串,要处理成 unicode.
L"...." 整体,可以看成是一个 unicode 字符串常量。
MFC 基本数据类型名(Generic-Text Data Type Name) _T 或 _TEXT ,
当程序里定义了 宏 _UNICODE 时, _T(....) 或 _TEXT(....) 编译时 就变成了 L"...."
使用 visual Studio 时,查找 Using Generic-Text Mappings 就可找到
L"...." 整体,可以看成是一个 unicode 字符串常量。
MFC 基本数据类型名(Generic-Text Data Type Name) _T 或 _TEXT ,
当程序里定义了 宏 _UNICODE 时, _T(....) 或 _TEXT(....) 编译时 就变成了 L"...."
使用 visual Studio 时,查找 Using Generic-Text Mappings 就可找到
展开全部
L是表示字符串资源为Unicode字符集。
是一个宏,可以参考UNICODE编程的内容。
是一个宏,可以参考UNICODE编程的内容。
追问
那除了这个L,还有其他的比如_T是什么意思,这些哪里可以找到它们的意思?
追答
_T是一个条件编译的宏
ANSI 下_T()为空
UNICODE
#define __T(x) L ## x #define _T(x) __T(x)
## 表示连接 相当于把L和"" 粘在一起。
在网上搜搜把,弄程序是很费时间的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-02-28
展开全部
字符集的问题,,VC6以后编译器默认UNCODE宽字符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询