免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: liangtf
打印 上一主题 下一主题

宏定义#define ADD(a,b) a+b 容易出现什么问题? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2004-03-05 11:16 |只看该作者

宏定义#define ADD(a,b) a+b 容易出现什么问题?

原帖由 "liangtf" 发表:
谢谢大家指教。等要是录用我的话,非问问他他的答案是什么。
不过估计没戏了,郁闷ING


所以要常来。
如果你能写出

#define ADD(a,b) ((a)+(b))

相信C语言的其它精髓也掌握得差不多了。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
12 [报告]
发表于 2004-03-05 11:18 |只看该作者

宏定义#define ADD(a,b) a+b 容易出现什么问题?

写一个宏的方法就是每个变量都要加括号,
外面还加括号,总之是层层的括号。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
13 [报告]
发表于 2004-03-05 11:23 |只看该作者

宏定义#define ADD(a,b) a+b 容易出现什么问题?

层层括号,严防死守.

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
14 [报告]
发表于 2004-03-05 12:29 |只看该作者

宏定义#define ADD(a,b) a+b 容易出现什么问题?

已收入 FAQ-5-4

论坛徽章:
0
15 [报告]
发表于 2004-03-05 13:17 |只看该作者

宏定义#define ADD(a,b) a+b 容易出现什么问题?

不要这样使用宏  ADD (a++, a++)

即使这样也不好 ADD (a++, b++), 因为你不知道它是如何展开的.

论坛徽章:
0
16 [报告]
发表于 2004-03-05 13:48 |只看该作者

宏定义#define ADD(a,b) a+b 容易出现什么问题?

关于宏的这些问题可详见《C陷阱与缺陷》,里面说得很清楚。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP