#define的问题

[复制链接]
查看11 | 回复1 | 2009-6-30 13:10:04 | 显示全部楼层 |阅读模式
你把MA展开就可以了。MA(1+a+b)展开以后就是1+a+b*(1+a+b-1)1+1+2*(1+1+2-1)结果当然是8了。如果你把宏改成如下,结果就是12#define MA(x) (x)*(x-1)
回复

使用道具 举报

千问 | 2009-6-30 13:10:04 | 显示全部楼层
MA(1+a+b)相当于是1+a+b*(1+a+b-1)所以是错的应该写成#define MA(x) (x)*((x)-1)
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行