每日一题(9)—— 写一个标准宏MIN,这个宏输入两个参数并返回较小的一个

来源:互联网 发布:骑俄罗斯大洋马 知乎 编辑:程序博客网 时间:2024/05/29 08:36


写一个标准宏MIN,这个宏输入两个参数并返回较小的一个。





分析:

宏定义的注意两点:

1、数据类型是否有溢出的风险(如一年有多少个秒的宏);

2、带参宏的每个参数都要用括号括起来。

#define MIN(x,y) ((x) < (y) ? (x) : (y))

上面这种写法已经算很严谨的了,但不适用于以下情况:

a = MIN(++i, j); // 这个可能会让表达式产生两个副作用。








阅读全文
0 0