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

© libra 中级黑马   /  2014-6-29 15:42  /  1172 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. #define pingfang(a) (a*a)
  2. #include "stdio.h"
  3. int main()
  4. {
  5.      int c = pingfang(5+5);
  6.      printf("c is %d\n", c);
  7.      return 0;
  8. }
复制代码


这道题的答案很出人意料~

4 个回复

倒序浏览
不意外啊。基础视频里拿这个当例题讲过的。关键点是:宏定义是原封不动的文本替换,没有任何计算功能
回复 使用道具 举报
35嘛,有啥意外的啊
回复 使用道具 举报
宏定义就是纯粹的文本替换,按这个原则替换了,该怎么运行就怎么运行!结果并不意外啊!
回复 使用道具 举报
相当于5+5*5+5
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马