猿问

求助大佬,请问在C++中 goto 和 return 是怎么用的?能如下表达吗?

譬如这样:
Start:xxxxxx;
L1:xxxxx;if(i==1)goto Start;xxxxx;if(a!=0)goto L2;xxxxx;
L2:xxxxx;
如何用C++来表达呢?
就2楼的答复,
"等代码量大了,问题可就多了"
那么大了之后,不用goto来转到;则用到什么语句呢?
请高手解答一下~

潇湘沐
浏览 239回答 3
3回答

三国纷争

goto语句是无条件的跳转 也就是同汇编中的 jmp语句。语法为:"goto 自定义的标签" 如 goto L2;return 是一个函数的完成,返回上一层调用处。 同汇编中的 ret你写的例子代码 是可以被c++编译器正常编译的,但是一般写程序中非到万不得已不是使用goto语句。因为goto语句打乱了程序的流程是代码不好读懂,而且不容易调试。切记少用。 你现在的代码量少看不出来,等代码量大了,问题可就多了,非常麻烦!我的意思是说,尽量的不要用goto语句,就是说如果你写的代码很多很多的时候,如果里面使用了大量的goto语句,在你再次阅读你的代码,修改你的代码时,那将是非常痛苦的,因为流程被goto任意的跳转,根本就无法阅读和修改。问题多多。那是很麻烦的。

米脂

goto是无条件转移语句return是用来函数中,作返回语句两者不是一个概念

幕布斯6054654

int x;x= function();int function(){int x;to: xxxxxxxx;xxxxxxxx;goto to;xxxxxxxx;cxxxxxxxxx;return x;}函数中,调用goto,则回到goto语句中的标记处,而后边的return则是返回一个数值给调用这个函数的变量x
随时随地看视频慕课网APP
我要回答