bdzhaojing 发表于 2014-8-30 14:20:55

请问使用if else和case有什么不同呀

如题。用哪个比较好呢?

techbaby 发表于 2014-8-30 14:28:17

不同问题不同对待,没有那个好,那个不好。

swtch只能用整数判断,但if就不受这个限制。

csaaa 发表于 2014-8-30 14:32:25

sunnyqd 发表于 2014-8-30 14:32:32

记得是,一个是顺序执行,一个是并行执行

mcupro 发表于 2014-8-30 14:47:50

简单说 if是有优先级的,而case一般不带优先级。
casex也可以实现优先级。
能用case尽量用case.

有时候用多个条件的if else 不能满足时序要求,可以换成case 看看。

franki 发表于 2014-8-31 10:42:00

楼上几位说的都很好

Nuker 发表于 2014-8-31 12:39:21

只有5楼是正解

bdzhaojing 发表于 2014-9-1 14:49:29

mcupro 发表于 2014-8-30 14:47
简单说 if是有优先级的,而case一般不带优先级。
casex也可以实现优先级。
能用case尽量用case.


明白了,谢谢

笑笑我笑了 发表于 2014-9-1 15:00:48

techbaby 发表于 2014-8-30 14:28
不同问题不同对待,没有那个好,那个不好。

swtch只能用整数判断,但if就不受这个限制。


switch-case可以用枚举类型。

d__xin 发表于 2014-9-1 15:01:05

哪个方便用哪个,分支多时用CASE直观,分支少用if方便。还有CASE单步仿真时非常慢。

Excellence 发表于 2014-9-1 15:05:25

if else 条件可以试整数,浮点,表达式等等。
CASE 是整数。用CONST定义的也不行。枚举或#DEFINE定义的可以。

mcupro 发表于 2014-9-3 13:16:20

楼上好几个都在说C语言里面的CASE ,也都对 呵呵

bdzhaojing 发表于 2014-9-3 13:51:52

mcupro 发表于 2014-9-3 13:16
楼上好几个都在说C语言里面的CASE ,也都对 呵呵

他们两个在资源和速度方面有什么优劣吗?

dr2001 发表于 2014-9-3 14:00:38

Case是If-Else在特定条件下的简化版本。
对于现代编译器,当条件及实现的功能一样时,二者生成的代码基本相同。

bdzhaojing 发表于 2014-9-3 14:08:10

dr2001 发表于 2014-9-3 14:00
Case是If-Else在特定条件下的简化版本。
对于现代编译器,当条件及实现的功能一样时,二者生成的代码基本相 ...

恩,谢谢指点

q8360428 发表于 2014-9-3 15:04:41

{:smile:}编译 器 决定的事!    编译器智能后生成的电路一样
页: [1]
查看完整版本: 请问使用if else和case有什么不同呀