goto语句的七伤拳属性

来源:互联网 发布:网络目标市场匹配题 编辑:程序博客网 时间:2024/06/05 19:00

goto语句用起来杀敌一千 自损八百

C语言以灵活著称,提供了可随意滥用的goto语句以及标记跳转位置的标号,本来goto的用法也比较特殊,比如一次跳出两层或更多的循环,即跳出深度嵌套[1]

for(…)    for(…){    …     if(xxx)        goto error;    }

上面的例子用于处理错误,不过上面的例子也可以写成不带goto的,只是会增加额外的重复测试或者变量。但是用goto看起来好一点理解

如果goto语句用的多,那么就要坏事儿,因为你已经看不懂你的代码逻辑了,到处都是循环依赖,理都理不清楚。
乱的代码我就不贴出来了,我放在了一个技术问答里面。

goto 如果不是跳出深度嵌套,就不要用。

参考资料:
[1] C程序设计语言第二版-新版 KR P54

原创粉丝点击