goto语句

11. goto语句

C语⾔提供了⼀种⾮常特别的语法,就是goto语句和跳转标号,goto语句可以实现在同一个函数内跳转到设置好的标号处。

例如:

cpp 复制代码
int main()
{
    printf("hehe\n");
    goto next;
    printf("haha\n");
next:
    return 0;
}
cpp 复制代码
int main(void)
{
again:
    printf("我爱C语言\n");
    printf("我爱编程\n");
    goto again;
}

注意:第二个示例是一个四循环,是不断的往下进行并跳回again处继续向下重复执行.

goto 语句如果使⽤的不当,就会导致在函数内部随意乱跳转,打乱程序的执⾏流程,所以我们的建 议是能不⽤尽量不去使⽤;但是使⽤ goto 语句也不是⼀⽆是处,在多层循环的代码中,如果想快速跳 goto 就⾮常的⽅便了。

cpp 复制代码
for(...)
{
    for(...)
    {
        for(...)
        {
            if(disaster)
            goto error;
        }
    }
}
error:
//...

本来for循环想提前退出就得使⽤3个 break ,⼀个 break 只能跳出⼀层 break 才能跳出循环,所以在这种情况下我们使⽤ for 循环,如果3层循环嵌套 goto 语句就会更加的快捷。

相关推荐
风若飞2 分钟前
Spring Ai 入门遇到问题1
java·后端·spring
今天要早睡_20 分钟前
C++01_入门基础复习
开发语言·c++
Nuanyt25 分钟前
LeetCode Hot 100 链表专题(五)· 2 题(Java)
java·算法·leetcode·链表
黑马程序员毕设1 小时前
基于 Java 的餐饮点餐系统设计与应用报告
java·开发语言
SL_staff1 小时前
从文档工具到知识中枢:基于JVS数字底座构建企业级统一内容管理平台的技术实践
java·开源·全栈
SL_staff1 小时前
从‘连得上’到‘管得好’:JVS-IOT双引擎驱动设备运维闭环
java·物联网·产品
1-1=03 小时前
C# 委托与事件
开发语言·c#
Fuyo_11193 小时前
C++ 运行时多态与虚函数机制全面剖析【面试重点】
开发语言·c++·面试
w_zero_one4 小时前
递归算法(一)
java·开发语言·算法
SL_staff4 小时前
私有化低代码不是减配版开发:JVS双模式建模如何重建IT交付信任
java·低代码·spring cloud