概述
关于goto语句
大家一直强调的是能不用尽量不用,但是goto语句确实有他的一个优势,最典型的就是: 高效的跳转方式。
int Function(void)
{
if(x)
goto ERROR;
if(xx)
goto ERROR;
//... ...
return 1;
ERROR:
XXX.Close();
return 0;
}
像这种跳转到错误处是goto最常见的用法,还有就是在多层循环嵌套中,跳出循环用goto就比较方便,而如果用break、return则需要执行好几次。
当然对于goto有这些优势为啥还尽量少用了,其实最主要的就是他的跳转方便,如果较多地方使用的话,容易造成逻辑混乱(跳来跳去容易把自己绕晕)。
因此小项目用用还好,大项目的话还是尽量别用。
在其他的帖子上有找到使用goto语句的潜在风险:
1.破坏结构化,易读性差,内存中断次数陡增降低执行速度
2.goto是汇编孑遗。在C里不恰当的使用goto会破坏逻辑的完整性,增加跑飞的风险,有一个很关键的原因是因为现在编译器已经能很好的对循环进行优化,循环内部的goto语句会让优化很难控制。
链接: 该帖子下的评论.
最后
以上就是沉默帆布鞋为你收集整理的笔记之goto语句的使用关于goto语句的全部内容,希望文章能够帮你解决笔记之goto语句的使用关于goto语句所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复