社区
C++ 语言
帖子详情
求助: 关于#ifdef _UNICODE的疑问
miniSteel
2007-05-18 02:27:10
请问"_UNICODE"是个类型名还是什么东西? 在哪里有定义, 它是怎么和Unicode码联系起来的?
...全文
1455
10
打赏
收藏
求助: 关于#ifdef _UNICODE的疑问
请问"_UNICODE"是个类型名还是什么东西? 在哪里有定义, 它是怎么和Unicode码联系起来的?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
whlwsl
2011-05-23
打赏
举报
回复
[Quote=引用 9 楼 chiyer 的回复:]
不该明白楼上的意思,这个更_DEBUG 有什么关系
我的意思是说明 _UNICODE 和 UNICODE 的区别
#ifdef _UNICODE
#ifndef UNICODE
#define UNICODE // UNICODE is used by Windows headers
#e……
[/Quote]
他只是举例而已,意思是说要你自己借助VS/VC助手去查看宏的意义,你提到的两个宏的区别自己查看完后就明白了。
星羽
2007-05-18
打赏
举报
回复
不该明白楼上的意思,这个更_DEBUG 有什么关系
我的意思是说明 _UNICODE 和 UNICODE 的区别
#ifdef _UNICODE
#ifndef UNICODE
#define UNICODE // UNICODE is used by Windows headers
#endif
#endif
#ifdef UNICODE
#ifndef _UNICODE
#define _UNICODE // _UNICODE is used by C-runtime/MFC headers
#endif
#endif
oyd
2007-05-18
打赏
举报
回复
楼上们,授人以鱼不如授人以渔
如果以后又有_DEBUG呢
楼主是还不知道如何去查看_UNICODE的定义
如果你用Visual Studio系列,去安装一个VisualAssist,它可以帮你查看_UNICODE的定义
如果你用vim/emacs系列,去查阅一下ctags/cscope的用法
星羽
2007-05-18
打赏
举报
回复
_UNICODE 是让c函数使用 unicode
UNICODE 是让api使用 unicode
珍惜生命远离CPP
2007-05-18
打赏
举报
回复
编译选项里面有 一个character set选项,这个选项控制着这个宏的定义
miniSteel
2007-05-18
打赏
举报
回复
明白了, 谢谢各位!
miniSteel
2007-05-18
打赏
举报
回复
谢谢, 那么在哪里可以找到这个宏呢?
todototry
2007-05-18
打赏
举报
回复
编译器根据定义了这个宏,对于函数进行了选择
一些api的三个名字,A(ascii),W(unicode)而你使用的时候
只写messagebox即可,编译器根据定义了这个宏与否进行函数替换
freshui
2007-05-18
打赏
举报
回复
宏
可能是自己#definde的
珍惜生命远离CPP
2007-05-18
打赏
举报
回复
_UNICODE 是个宏
如果定义了_UNICODE
那么MessageBox将被替换成MessageBoxW,因为实际上没有MessageBox这个函数的
否则MessageBox被替换成MessageBoxA
MessageBoxA 使用的是 ascii类型的参数
MessageBoxW 使用的是 unicode类型参数
笔记:关于#if
def
xxx_GLOBALS语句的用法
#if
def
xxx_GLOBALS #
def
ine xxx_EXT #else #
def
ine xxx_EXT extern #endif 语句说明: 定义全局变量,避免在.c和.h文件中重复定义。 1.若在.c文件中有如下定义: #
def
ine xxx_GLOBALS 则编译器在处理该文件时,...
#if
def
__cplusplus语句不生效分析
#if
def
__cplusplus语句不生效分析 一个C编写的项目到VS2019中进行编译时,发现头文件里面#if
def
__cplusplus语句不生效,导致编译出错。百度和谷歌均查了一下,发现没有相关的问题解答。后面经过自析,发现是因为...
#if
def
__cplusplus解释
#if
def
__cplusplus extern “C” { #endif // Code #if
def
__cplusplus } #endif 在C++编译器中,已经内置了__cplusplus这个宏定义,所以在使用C++编译器编译其它语言(比如C语言)时,用这样的方式,可以让...
#if
def
_cplusplus(转)
时常在cpp的代码之中看到这样的代码: #if
def
__cplusplus extern "C" { #endif //一段代码 #if
def
__cplusplus } #endif 这样的代码到底是什么意思呢?首先,__cplusplus是cpp中的自定义宏,...
#if
def
__cplusplus extern “C” { #endif的作用!
#if
def
__cplusplus extern “C” { #endif //代码 #if
def
__cplusplus } #endif 解释: (1)cpp中对函数的重载处理。在c++中,为了支持重载机制,在编译生成的汇编码中,要对函数的名字进行一些处理,加入...
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章