鱼C论坛

 找回密码
 立即注册
查看: 2766|回复: 11

宏定義的疑問

[复制链接]
发表于 2014-6-15 09:58:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 kikiatw 于 2014-6-15 11:45 编辑

#ifdef  UNICODE
    ......
    #define  __TEXT(quote)  L##quote  // 在字符串前边加上 L 使用宽字符,每个字符占两个字节
#else
    ......
    #define  __TEXT(quote)  quote     // 直接解释为字符串
#endif

#define  TEXT(quote)  __TEXT(quote)

上面这个问题我更矇了, 一般我们用宏定义
#define   int   size
这意思是说我们可以用 size 去替代 int 宣告一个整形变数
所以我们在代码内打上 size abc 编译器会替换成 int abc
那上面我们用 TEXT(quote) 是同等於 __TEXT(quote), 在unicode 环境也同等於 L##quote
但是这种是逆向的关係吧, 不代表 TEXT(quote)会替代成 L##quote,
而是在代码段我们打上 L##quote 会被替代成 TEXT(quote)吧
可是怎麼跟小甲鱼老师说的恰恰相反呢? 请大神帮忙开释, 感谢!!

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-6-15 10:41:12 | 显示全部楼层
话说 能用简体字么?? 好多字不认识啊 ~~~~(>_<)~~~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-15 10:48:07 From FishC Mobile | 显示全部楼层
大神出現了,可惜大神看不懂正體中文......
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-15 10:52:57 | 显示全部楼层
問題一我懂了, 小甲魚老師在後面有做解釋了, 可是問題二還是看不懂, 求大神解釋
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-15 11:45:53 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-6-15 13:48:38 | 显示全部楼层
#define你可以把它想象成就是纯文本的替换,他和typedef是有区别的。TEXT(quote) 会被替换成__TEXT(quote),不要去想他的什么功能。就是简单地字符替换。这就好比你的爸爸叫你儿子,你的老婆叫你老公,这两个称谓都是只一个人。如果是UNICODE编码方式就把__TEXT(quote) 换成 L##quote  ,##这个应该是编译器的某项功能吧,反正就是在前面加上一个L,编程宽字符了。总之这些就是简单地字符替换而已{:1_1:}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-15 14:32:39 | 显示全部楼层
本帖最后由 kikiatw 于 2014-6-15 14:43 编辑

抱歉 我懂了, 我把#define 與 #typedef搞混了 我應該重新複習該章節!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-6-16 14:31:01 | 显示全部楼层
kikiatw 发表于 2014-6-15 14:32
抱歉 我懂了, 我把#define 與 #typedef搞混了 我應該重新複習該章節!!

#typedef   ?????
你确定搞懂了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-16 18:06:07 | 显示全部楼层
我真的搞懂了, 我知道多個#
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-1 18:00:52 | 显示全部楼层
不懂,进来学习一下。。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-8-20 08:12:10 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-10-15 00:21:31 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 15:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表