谢谢我现在很bug 2022-10-31 14:29 采纳率: 85.7%
浏览 51
已结题

对define的深度理解,细节

输出里第三行x变为了2,不理解为什么,按理说应该是1,是有什么特殊的知识点吗

img

img

  • 写回答

5条回答 默认 最新

  • 快乐鹦鹉 2022-10-31 14:40
    关注

    SQUARE这个宏有问题,要改成#define SQUARE(a) (a)*(a)
    否则 SQUARE(1+2+z++I++w)展开后就是1+2+z++I++w * 1+2+z++I++w ,而不是(1+2+z++I++w) * (1+2+z++I++w)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 11月9日
  • 已采纳回答 11月1日
  • 创建了问题 10月31日

悬赏问题

  • ¥15 两台交换机分别是trunk接口和access接口为何无法通信,通信过程是如何?
  • ¥15 C语言使用vscode编码错误
  • ¥15 用KSV5转成本时,如何不生成那笔中间凭证
  • ¥20 ensp怎么配置让PC1和PC2通讯上
  • ¥50 有没有适合匹配类似图中的运动规律的图像处理算法
  • ¥15 dnat基础问题,本机发出,别人返回的包,不能命中
  • ¥15 请各位帮我看看是哪里出了问题
  • ¥15 vs2019的js智能提示
  • ¥15 关于#开发语言#的问题:FDTD建模问题图中代码没有报错,但是模型却变透明了
  • ¥15 uniapp的h5项目写一个抽奖动画