野火电子论坛

 找回密码
 注册

扫一扫,访问微社区

查看: 28855|回复: 1271

【每日一题】 宏定义 比较两个数大小 [嵌入式校园招聘笔试题]

  [复制链接]
发表于 2014-10-10 11:22:49 | 显示全部楼层 |阅读模式
该题目经常被全国各大公司用于校园招聘笔试题目

知识点:标识符#define的应用
题目:写一个"标准"MIN ,这个宏输入两个参数并返回较小的一个。
答案:答题回复可见,请做题。

游客,如果您要查看本帖隐藏内容请回复

回复

使用道具 举报

发表于 2014-10-10 13:23:01 | 显示全部楼层
#define MIN(x,y) ((x) <= (y) ? (x) : (y)) 最安全
回复 支持 5 反对 0

使用道具 举报

发表于 2014-10-12 21:44:13 | 显示全部楼层
#define min(a, b)  ((a) <=  (b))? (a)b) )  最外面一层加括号可以避免 在define 替换文本后 因为优先级的问题 导致运算偏离本意 而里面也是同样的道理  避免前面用define 定义的a 没有加括号 导致文本替换后出现错误
回复 支持 5 反对 0

使用道具 举报

发表于 2014-10-10 11:26:34 | 显示全部楼层
#define min(a,b) a>b?b:a
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2014-10-10 11:28:52 | 显示全部楼层
24841500 发表于 2014-10-10 11:26
#define min(a,b) a>b?b:a

注意括号的使用
回复 支持 1 反对 0

使用道具 举报

发表于 2014-12-8 16:47:15 | 显示全部楼层
#define MIN(a,b) if(a>b) return b
回复 支持 1 反对 0

使用道具 举报

发表于 2014-10-10 11:26:17 | 显示全部楼层
#Define YEAR_SEC 31536000
回复 支持 反对

使用道具 举报

发表于 2014-10-10 11:28:12 | 显示全部楼层
为啥我看到的题目不是这个
回复 支持 反对

使用道具 举报

发表于 2014-10-10 11:29:50 | 显示全部楼层
#define MIN(a,b) (a>b)?b:a
回复 支持 反对

使用道具 举报

发表于 2014-10-10 11:31:03 | 显示全部楼层
本帖最后由 dajin1234 于 2014-10-10 11:32 编辑

#define MIN(x,y) ((x) <= (y) ? (x) : (y))  
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-10 14:19:28 | 显示全部楼层
刀_口 发表于 2014-10-10 11:29
#define MIN(a,b) (a>b)?b:a

弱爆啦。。。。。。。。。。。。。
回复 支持 反对

使用道具 举报

发表于 2014-10-10 16:07:38 | 显示全部楼层
本帖最后由 carollim 于 2014-10-10 16:09 编辑

#define MIN(a,b) (a>b)?a:b
回复 支持 反对

使用道具 举报

发表于 2014-10-10 16:16:25 | 显示全部楼层
学习中强烈支持,非常感谢哥们
回复 支持 反对

使用道具 举报

发表于 2014-10-10 16:26:24 | 显示全部楼层
#define  MIN(a,b)  ((a-b>0)? b:a)
回复 支持 反对

使用道具 举报

发表于 2014-10-10 17:20:31 | 显示全部楼层
不会啊,看看答案~~~
回复 支持 反对

使用道具 举报

发表于 2014-10-10 17:22:47 | 显示全部楼层
也是不会啊。。。。看答案
回复 支持 反对

使用道具 举报

发表于 2014-10-10 17:34:10 | 显示全部楼层
#define MIN(x,y) ((x) <= (y) ? (x) : (y))
回复 支持 反对

使用道具 举报

发表于 2014-10-10 17:46:48 | 显示全部楼层
#define MIN(x,y) (x)<=(y)?(x)y)
回复 支持 反对

使用道具 举报

发表于 2014-10-10 19:26:29 | 显示全部楼层
#define MIN(X,Y) (X>Y?X:Y)
回复 支持 反对

使用道具 举报

发表于 2014-10-10 20:28:00 | 显示全部楼层
#define  MIN(a,b)    {(a)>(b)?(b)a)}
回复 支持 反对

使用道具 举报

发表于 2014-10-10 21:11:43 | 显示全部楼层
#define MIN(a,b)  ((a<b)?(a)b))
回复 支持 反对

使用道具 举报

发表于 2014-10-10 21:14:43 | 显示全部楼层
强烈支持,非常感谢哥们
回复 支持 反对

使用道具 举报

发表于 2014-10-10 21:44:36 | 显示全部楼层
看看答案!
回复 支持 反对

使用道具 举报

发表于 2014-10-10 22:02:02 | 显示全部楼层
看看是什么答案
回复 支持 反对

使用道具 举报

发表于 2014-10-10 22:02:02 | 显示全部楼层
看看是什么答案
回复 支持 反对

使用道具 举报

发表于 2014-10-10 23:03:47 | 显示全部楼层
#define MIN(a,b) (a<b)?a:b
回复 支持 反对

使用道具 举报

发表于 2014-10-10 23:09:27 | 显示全部楼层
#define MIN(A,B) (A)>=(B)?(B)A)
回复 支持 反对

使用道具 举报

发表于 2014-10-10 23:12:59 | 显示全部楼层
#define MIN(A,B) (A)>=(B)?(B)A)  上一条输入的内容,怎么会有个笑脸呢,再打一遍看下,还有没有。
回复 支持 反对

使用道具 举报

发表于 2014-10-10 23:14:59 | 显示全部楼层
#define MIN(A,B) (A)>=(B)?(B)A)   难道是因为输入的时候,用的是搜狗输入法的原因,换成另外一种输入法试一试,最后试一次。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-11 09:11:33 | 显示全部楼层
ArmLinux 发表于 2014-10-10 23:14
#define MIN(A,B) (A)>=(B)?(B)A)   难道是因为输入的时候,用的是搜狗输入法的原因,换成另外一种输入法 ...

对了。。。。。。。。。。。。。。。。。。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-11 09:11:50 | 显示全部楼层
gq21 发表于 2014-10-10 23:03
#define MIN(a,b) (a

出现等于的情况呢
回复 支持 反对

使用道具 举报

发表于 2014-10-11 09:43:01 | 显示全部楼层
本帖最后由 老阮 于 2014-10-11 09:44 编辑

#define MIN(DataA, DataB)  ((DataA>DataB) ? DataB : DataA)

要多加括号啊...

平时确实define用的少。。。最多就常数定义...
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-11 09:44:56 | 显示全部楼层
老阮 发表于 2014-10-11 09:43
#define MIN(DataA, DataB)  ((DataA>DataB) ? DataB : DataA)

要多加括号啊...

这样是比较出来了,但是返回后到底是哪个啊
回复 支持 反对

使用道具 举报

发表于 2014-10-11 10:28:07 | 显示全部楼层
#define min(a,b) a>b?b:a
回复 支持 反对

使用道具 举报

发表于 2014-10-11 14:31:58 | 显示全部楼层
我是来看答案的
回复 支持 反对

使用道具 举报

发表于 2014-10-11 14:52:32 | 显示全部楼层
走过路过,不能错过
回复 支持 反对

使用道具 举报

发表于 2014-10-11 17:35:30 | 显示全部楼层
来学习一下
回复 支持 反对

使用道具 举报

发表于 2014-10-11 19:14:10 | 显示全部楼层
#define MIN(X,Y) return (X>Y)?Y:X;
回复 支持 反对

使用道具 举报

发表于 2014-10-11 20:26:49 | 显示全部楼层
#define MIN 100

回复 支持 反对

使用道具 举报

发表于 2014-10-11 21:14:02 | 显示全部楼层
#define MIN(a,b) ((a)<(b)?(a)b))
回复 支持 反对

使用道具 举报

发表于 2014-10-11 21:27:59 | 显示全部楼层
强烈支持,非常感谢哥们强烈支持,非常感谢哥们
回复 支持 反对

使用道具 举报

发表于 2014-10-11 21:29:17 | 显示全部楼层
学习了强烈支持,非常感谢哥们
回复 支持 反对

使用道具 举报

发表于 2014-10-11 21:48:29 | 显示全部楼层
走过路过,不能错过走过路过,不能错过走过路过,不能错过走过路过,不能错过
回复 支持 反对

使用道具 举报

发表于 2014-10-11 21:49:20 | 显示全部楼层
走过路过,不能错过走过路过,不能错过走过路过,不能错过走过路过,不能错过
回复 支持 反对

使用道具 举报

发表于 2014-10-11 22:35:49 | 显示全部楼层
来试试水平
回复 支持 反对

使用道具 举报

发表于 2014-10-12 10:16:35 | 显示全部楼层
#define MIN(X,Y)    (if(X>=Y)return Y;else return X;)
回复 支持 反对

使用道具 举报

发表于 2014-10-12 18:22:53 | 显示全部楼层
#define MIN(a,b) (a<b)?a:b
回复 支持 反对

使用道具 举报

发表于 2014-10-12 18:30:50 | 显示全部楼层
#define MIN(A,B) (A)>=(B)?(B)A)
回复 支持 反对

使用道具 举报

发表于 2014-10-12 19:40:53 | 显示全部楼层
抢沙发~给哥们顶一个
回复 支持 反对

使用道具 举报

发表于 2014-10-12 22:56:52 | 显示全部楼层
#define min(a,b) (a>b)?b:a
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-12 23:01:37 | 显示全部楼层
我不是二货 发表于 2014-10-12 21:44
#define min(a, b)  ((a)

二货分析的不错
回复 支持 反对

使用道具 举报

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

本版积分规则

野火电子公众号

手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号-2 大学生ARM嵌入式2群

GMT+8, 2018-11-16 07:53 , Processed in 0.122797 second(s), 37 queries , Gzip On.

野火电子论坛

© 2014-2016 www.firebbs.cn

快速回复 返回顶部 返回列表