keil C 没有goto语句的?

2020-01-23 14:32发布

如题,求解
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
79条回答
zuogm
1楼-- · 2020-01-29 09:13
 精彩回答 2  元偷偷看……
llemmx
2楼-- · 2020-01-29 09:38
大家可以不用goto ,不过可以提个问题,如果没有goto uIP是如何诞生的
librae8226
3楼-- · 2020-01-29 15:27
貌似从来没用过goto
但貌似据说大牛软件都有goto
于是乎看了几个linux/driver,确实goto了~
heuyck
4楼-- · 2020-01-29 16:27
回复【14楼】hsztc
【10楼】 888888888888  
第一个goto 直接用 return 0; 代替
第二个goto 可以直接去掉
-----------------------------------------------------------------------

第一个GOTO不可能去掉,要是哪天想把return 0改为return NO_ERR,你就得找那一堆return 0挨个改。
如果用了GOTO,直接改GOTO标号的那个return 0即可。
滥用return,我觉得比用goto更垃圾。
hsztc
5楼-- · 2020-01-29 22:13
【52楼】 heuyck

那是你认为的,goto语句使用起来是很容易出错的,就是多加几个return 0也不想用goto

又是你认为的,你可以加个宏定义 #define abc  return 0 ,

后面return 0全用abc来代,要改的话只要改这个宏定义就行了,何必要去找一堆,

这个宏是看到你的回复后写出来的,因为我从来没遇到过这么改代码的,也没用过这样的宏。


一般多个return如果值是一样的话,编译器会将多出来的return成生跳转语句,实际上也是一个return,

但使用return更安全。
kupica
6楼-- · 2020-01-30 04:03
 精彩回答 2  元偷偷看……

一周热门 更多>