break,continue,return的区别深度剖析

简介: break,continue,return的区别深度剖析

break, continue和return是在编程中常用的控制流语句,它们在循环和函数的执行过程中起到控制流的作用。


1.break语句:


break语句用于中断当前循环,并跳出循环体。当break语句被执行时,程序会立即跳出当前循环体,继续执行循环外的后续代码。break通常用于在循环中判断某个条件成立时,提前结束循环。


for (int i = 0; i < 10; i++) {
    if (i == 5) {
        break;
    }
    printf("%d ", i);
}

上面的代码将输出:0 1 2 3 4。当循环变量i等于5时,break语句将终止整个循环,不会执行后续的语句。

2.continue语句:


continue语句用于跳过当前循环中剩余的语句,直接进入下一次循环的判断条件。当continue语句被执行时,程序会立即跳出当前循环体,继续执行循环的下一次迭代。continue通常用于在循环中判断某个条件不成立时,跳过当前循环,进行下一次循环的判断。


for (int i = 0; i < 10; i++) {
   if (i == 5) {
      continue;
   }
   printf("%d\n", i);
}

输出结果为:0 1 2 3 4     6 7 8 9,当i=5时跳过下面的语句没有执行  printf("%d\n", i);


3.return语句:


return语句用于结束函数的执行,并返回一个值(可选)。当return语句被执行时,程序会立即结束函数的执行,并将指定的值(如果有)返回给调用者。return语句通常用于在函数中判断某个条件成立时,提前结束函数的执行,并返回特定的结果。


int square(int num) {
   return num * num;
}

在上述示例中,当调用square(3)时,函数会计算3的平方并返回结果9。


4.总结:


break语句用于中断循环,并跳出循环体。

continue语句用于跳过当前循环中剩余的语句,直接进入下一次循环的判断条件。

return语句用于结束函数的执行,并将指定的值返回给调用者。

相关文章
|
消息中间件 Java 测试技术
SpringBoot整合RabbitMQ图文过程以及RabbitTemplate常用API介绍
SpringBoot整合RabbitMQ图文过程以及RabbitTemplate常用API介绍
772 0
|
存储 运维 Kubernetes
终于读完了阿里云p9专家分享云原生Kubernetes全栈架构师实战文档
Kubernetes(简称K8s)发布至今已经被越来越多的公司所接纳,其受欢迎程度更是超过了人们的想象,已逐渐成为很多公司的标配,尤为重要的是掌握Kubernetes几乎成为所有互联网技术人员必备的一项技能。 Kubernetes的诞生象征着下一代云计算的时代已经来临,它的出现让很多应用和架构逐步实现了统一化、标准化、简单化,降低了公司因为架构设计不合理带来的问题,而且也大大减少了运维成本,使用Kubernetes可以轻轻松松管理上千台服务器、上万个容器节点。
|
网络协议 测试技术 Linux
Golang 实现轻量、快速的基于 Reactor 模式的非阻塞 TCP 网络库
gev 是一个基于 epoll 和 kqueue 实现的高性能事件循环库,适用于 Linux 和 macOS(Windows 暂不支持)。它支持多核多线程、动态扩容的 Ring Buffer 读写缓冲区、异步读写和 SO_REUSEPORT 端口重用。gev 使用少量 goroutine,监听连接并处理读写事件。性能测试显示其在不同配置下表现优异。安装命令:`go get -u github.com/Allenxuxu/gev`。
359 0
|
负载均衡 监控 Java
SpringCloud常见面试题(一):SpringCloud 5大组件,服务注册和发现,nacos与eureka区别,服务雪崩、服务熔断、服务降级,微服务监控
SpringCloud常见面试题(一):SpringCloud 5大组件,服务注册和发现,nacos与eureka区别,服务雪崩、服务熔断、服务降级,微服务监控
31798 8
SpringCloud常见面试题(一):SpringCloud 5大组件,服务注册和发现,nacos与eureka区别,服务雪崩、服务熔断、服务降级,微服务监控
|
数据处理 Python
Pandas中的drop_duplicates()方法详解
Pandas中的drop_duplicates()方法详解
2222 2
|
安全 Oracle Java
edge浏览器加载java插件
edge浏览器加载java插件
1355 1
|
算法 C语言
一文搞懂:一文教你快速搞懂速度曲线规划之S形曲线(超详细+图文+推导+附件代码)
一文搞懂:一文教你快速搞懂速度曲线规划之S形曲线(超详细+图文+推导+附件代码)
1052 0
一文搞懂:一文教你快速搞懂速度曲线规划之S形曲线(超详细+图文+推导+附件代码)
|
存储 算法 Java
【经典算法】LeetCode 5: 最长回文子串(Java/C/Python3实现含注释说明,Medium)
【经典算法】LeetCode 5: 最长回文子串(Java/C/Python3实现含注释说明,Medium)
774 2
|
JavaScript 前端开发
continue、return、break三者的区别
continue、return、break三者的区别