首页 > 编程知识 正文

c语言的goto语句,C语言中的goto

时间:2023-05-03 17:08:34 阅读:189463 作者:175

goto语法和用法语法:

goto语句也称为无条件迁移语句,其语法是goto语句标签; 其中,语句的标签是由标识符写的符号,位于一行语句之前,在标签之后加上冒号(语句的标签起到识别语句的作用,与goto语句结合使用。

loop:while(x7; goto:loop此示例在while结束后继续跳转到while以实现无限循环。

注: c语言不限制程序使用标签的次数,但不能重命名每个标签。

为什么不推荐goto语句:

由于goto语句是无条件跳转命令,使用goto语句后返回会使程序结构更加复杂,不利于以后的代码维护,特别是需要被维护者继承的情况。

当前编程采用结构化编程,便于移植,但采用goto语句会给结构化编程项目带来代码移植带来不便。 因为如果使用goto从一个结构跳到另一个结构,就会在结构之间建立联系,难以移植。

目前C语言等高级语言具有break、continue等语法,可以很好地代替goto,因此可以不用goto不用goto。

建议使用goto的场景:

直接跳出多重循环。

发生错误时清除资源。

能够提高程序清晰度的情况。

goto函数的使用原则:

使用goto语句,可以在同一个函数内进行goto,而不是从一个函数goto到另一个函数。

用goto语句在同一个函数内进行goto时,goto的起点应该是函数内小功能的结束,goto的目标label应该是函数内另一个小功能的开始,而不应破坏功能的实现。

不能从一个复杂执行状态中的位置goto移动到另一个位置。 例如,不允许从多重嵌套循环判断中退出。  

应该避免向两个方向跳跃。 这容易导致“面代码”,也就是逻辑混乱。

以上纯属个人见解,如有错误,敬请指正。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。