A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 阳光地带 中级黑马   /  2014-7-21 02:45  /  1162 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.符号常量的宏定义
#define 标识符 字符串

2.带有参数的宏定义及其替换
#define 标识符(参数列表) 字符串
例: #define FUN(x) (x*x)

注意:宏定义末尾不加;
宏定义的本质是在预处理阶段(编译之前,所以不做语法检查)进行文本替换。

最后考考大家:
  1. #define ADD(x, y) x+y
  2. int m = 3;
  3. m+ = m*ADD(m, m);
复制代码


运行上面这段代码后,m的值是多少?

评分

参与人数 1技术分 +1 收起 理由
傘が咲く + 1

查看全部评分

2 个回复

倒序浏览
我晕,这个太简单了吧,宏定义要记住,只是单纯的字符串替换,应该写成(x)+(y) 答案是12
回复 使用道具 举报
火拳 发表于 2014-7-21 09:25
我晕,这个太简单了吧,宏定义要记住,只是单纯的字符串替换,应该写成(x)+(y) 答案是12 ...

真遗憾,答案是15。不需要有括号啊。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马