不用goto向上跳转的程序怎样编写

[复制链接]
1697|35
jlyuan 发表于 2017-5-25 23:18 | 显示全部楼层
我喜欢用goto  ,你不觉得 jmp  jne je 诸如此内很爽么
zhenykun 发表于 2017-5-25 23:20 | 显示全部楼层

想用就用,法律又没有规定不许用。
yszong 发表于 2017-5-25 23:22 | 显示全部楼层
滥用goto的后果很严重。可以用循环来做。
shimx 发表于 2017-5-25 23:24 | 显示全部楼层

只要产生外部中断,就跳到程序开始处,用什么语句实现呢。在c中,大虾们?
dengdc 发表于 2017-5-25 23:26 | 显示全部楼层

不用goto, 就用C语言写一个"goto"指令了,

比如楼上问题可用: (*((void(*)(void))ARESET_VECTOR_ADDR))();
heweibig 发表于 2017-5-25 23:27 | 显示全部楼层
一般循环语句实在不给力我才用goto,也只是偶尔用,这东西用不好会带来不必要的麻烦。goto语句其实很简洁明了,但最好不要用goto 做循环 (资料上说的,太具体的不知道)
wuhany 发表于 2017-5-25 23:29 | 显示全部楼层
关键不在于你用不用goto的问题,用goto同样可以写出结构化好的程序,只不过要特别小心、麻烦。相反,不用goto程序的结构化就自然而然就很好也是不切实际的。
wuhany 发表于 2017-5-25 23:31 | 显示全部楼层
什么是结构化?如果程序结构中仅仅只有顺序、选择、循环此三种结构和此三种结构的嵌套。这种程序结构就是结构化的。使用结构化编程有很多优点。当然不是说非结构化就没有优点。而是说非结构化编程带来的负面影响远远大于其优点。而且就编程实践来看,还未发现结构化编程不能描述的算法。
wuhany 发表于 2017-5-25 23:33 | 显示全部楼层
因此,随意使用goto只是很容易破坏程序的结构化而已。初学者最好不用goto语句。其实最关键的还是要养成结构化编程的习惯。记住:你的程序只有三种结构——顺序、选择和循环。拒绝其他任何结构!
lizye 发表于 2017-5-25 23:36 | 显示全部楼层
GOTO跳上面后要再跳下去麻烦,你可以单独写出子函数,调用下。
liliang9554 发表于 2017-5-25 23:38 | 显示全部楼层

如果要跳出循环可以使用break语句   如果要跳上去  可以使用判断语句实现   当然最好使用指针   呵呵  用指针很方便   关键是调用内存时   不能出错   呵呵  堆栈问题也要处理好
jiaxw 发表于 2017-5-25 23:41 | 显示全部楼层

哦,用循环语句while,for语句
huangchui 发表于 2017-5-25 23:42 | 显示全部楼层
有一次我写一段程序,想来想去没办法,只好用了goto.
jiajs 发表于 2017-5-25 23:44 | 显示全部楼层
过了几个月,再回过头看一下代码,咦,完全不需要goto嘛,改了几行,功能完全一样,但是看上去逻辑很清晰。
 楼主| zhaoxqi 发表于 2017-5-25 23:48 | 显示全部楼层
其实还是不大明白,我再琢磨琢磨吧,多谢了哈,结贴了先
ohy3686 发表于 2017-5-26 10:24 | 显示全部楼层
我猜楼主以前一定是个汇编高手。
C语言的基本单位是函数。
你把要goto到的那个地方的相关功能做成函数
在主函数中根据条件进行调用就可以了
跳来跳去的,多不安全呀。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部