摘要: 今天做oj的时候,定义了两个宏://wrong code#define max_2(a,b) a>b?a:b#define max_3(a,b,c) (a>b?a:b)>c?(a>b?a:b):c然后程序结果总是WA,仔仔细细检查程序的逻辑一遍又一遍,都快抓狂了,最后终于发现是我定义的两个宏有问题。改为如下就AC了:#define max_2(a,b) (a>b?a:b)#define max_3(a,b,c) ((a>b?a:b)>c?(a>b?a:b):c)对的,就是差两个括号,没有括号,因为优先级不一样,造成运算顺序并不是我们预期的那样,运 阅读全文
posted @ 2013-08-26 17:12 duanguyuan 阅读(4510) 评论(4) 推荐(0) 编辑