C语言中return、break用法和区别

1return

return:跳出当前正在执行函数。

使用方法:return (表达式);

其中,(表达式)是可以省略的。 

1.有返回类型

return通常都是带有返回类型的,比如返回int型变量:

int Fun(void){  int rtn;//函数代码;return rtn;}

这里可以返回变量、结构体、指针等。

强调两点:

a.return能返回数组.

b.return不能返回指向(函数内)局部变量的类型;

2.无返回类型

有些情况下,return是无返回类型的。

比如,当某个条件成立,需要结束执行本函数:

void Fun(void){  int rtn;//函数代码;if(条件成立)    return;//函数代码;}

强调两点:

a.void 空类型

因为函数的返回类型为void(空类型),所以,这里 return 是不带任何值的。(带有返回数据,就会报错)

b.void * 任意类型指针

这是一个“返回任意类型指针”的指针函数(也是一个函数,只是它返回类型是指针)。

比如uCOS邮箱部分的函数:

2break

break:在循环体内,结束整个循环过程,然后执行循环之后的代码。

break常用语 for、 while 和 switch 语句中。

比如:

for(i=0; i<100; i  ){  //代码if(条件成立)  break;    //跳出for循环//代码}
switch(num){  case 1: //代码          break;case 2: //代码          break;}

1.break只挑出当前循环

如果有两层、甚至多层嵌套的for循环,break只跳出它当前所在那个for循环,外层的for循环依然会继续循环。

比如:

int a=0;int i=0;int j=0;
for(i=0;i<=9;i  ){    for(j=0;j<=9;j  )    {        break;        a  ;        //这里a  不会执行;    }a  ;            //这里a  会执行;}printf("%d",a);

内层那个a 不会执行,所以最后输出结果为:10

2.case如果没有 break 会依顺序执行

如果 switch 没有break,比如:

switch(num){  case 1: //代码          //没有break;case 2: //代码          //没有break;case 3: //代码          //没有break;}

如果num=2,没有break,则case 2 和 case 3都会被执行。

相信有很多人都在这里踩过坑。

声明:

本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/338692.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

兴趣点推荐代码_如何解读霍兰德职业兴趣测评结果?

霍兰德职业兴趣测评不难&#xff0c;难的是如何解读测评结果&#xff0c;这才是生涯规划测评中最重要的部分。今天我们就来说说霍兰德职业兴趣测评的结果应该如何解读。兴趣测评的结果是六种类型得分最高的三个代码依次排列组合而成&#xff0c;所以基本上就是R-实用型、I-研究…

linux mint 18支持安卓编译,Linux mint 18版本开启SSH服务

linux mint 18版本默认是没有安装ssh server的需要手动安装安装ssh server&#xff1a;此命令需要联网&#xff0c;会自动下载安装安装之后看是否开始了ssh&#xff0c;看到ssh-agent 和sshd 说明ssh server 已经启动了如果没看到ssh server 需要手动启动需要/etc/init.d/ssh s…

jcg q8 固件_JCG学院开设了Java设计模式课程!

jcg q8 固件自从我们推出JCG学院以来&#xff0c;已经有一段时间了。JCG学院是一个基于付费内容的高级订阅网站&#xff0c;提供有关最新&#xff0c;最先进技术的一系列课程&#xff0c;从RedSQL数据库&#xff08;如Redis和CouchDB&#xff09;到Android移动开发。 当然&…

C语言520心形表白,初学者福利!!

C语言实现打印出心形&#xff0c;初学者的表白神器。解题思路&#xff1a;这道例题我分了4部分&#xff0c;前3行一部分&#xff0c;4-6行一部分&#xff0c;7-13行一部分&#xff0c;最后一行一部分&#xff0c;读者请仔细阅读注释&#xff0c;小林写的很详细了。前三行输出&a…

kali linux 2019教程,[教程]KALI LINUX 2.0 2019 更新国内源

2019年最新版本KALI 为 KALI 2019.1 下载地址:https://www.kali.org/downloads/有的新入门的朋友可能会问&#xff0c;为什么每次都无法手动更新 例如:Update命令的执行失败&#xff1f;其实系统是没有问题的&#xff0c;因为KALI自带的更新源是国外的。因国内延迟高&#xff0…

C | 构成和编码规范

C 的构成1.一个C 程序可以由一个程序单位或多个程序单位构成,每个程序单位为一个文件,编译过程中会对每个文件进行编译。2.每个程序文件包括&#xff1a;预处理命令、全局声明、函数&#xff0c;其中预处理命令就是程序开头的那行&#xff1b;全局声明则是在函数外进行的声明&a…

涡轮流量计说明书_实际应用中超声波流量计与电磁流量计哪个更好用

流量仪表是水务、石化等行业的重要仪器之一&#xff0c;可以用计量的眼睛来比喻。对于水务水利行业&#xff0c;更是具有特殊的意义。比如供水行业中的药剂的添加&#xff0c;如果相关的计量仪表精度不高&#xff0c;将直接影响到水质的优差&#xff0c;甚至会影响到用户人群的…

C语言数据类型转换(自动类型转换 强制类型转换)

数据类型转换就是将数据&#xff08;变量、数值、表达式的结果等&#xff09;从一种类型转换为另一种类型。自动类型转换自动类型转换就是编译器默默地、隐式地、偷偷地进行的数据类型转换&#xff0c;这种转换不需要程序员干预&#xff0c;会自动发生。1) 将一种类型的数据赋值…

C 为什么非要引入那几种类型转换?

为什么要引入这几种类型转换&#xff0c;它与C语言中的强制类型转换有什么区别&#xff1f;这四种类型转换分别应用在什么场景&#xff1f;C 为什么要引入这几种强制类型转换&#xff1f;我们都知道C 完全兼容C语言&#xff0c;C语言的转换方式很简单&#xff0c;可以在任意类型…

C语言笔试两题,有坑

题目一最近遇到的一个华为笔试题题目&#xff1a;对字符串中的所有单词进行倒排。说明&#xff1a;1、构成单词的字符只有26个大写或小写英文字母&#xff1b;2、非构成单词的字符均视为单词间隔符&#xff1b;3、要求倒排后的单词间隔符以一个空格表示&#xff1b;如果原字符串…

嵌入式linux文件系统启动,嵌入式Linux之文件系统启动分析【原创】

this.p{ m:2,b:2,loftPermalink:,id:fks_094068082086089066084084095095080087080066082082083075,blogTitle:嵌入式Linux之文件系统启动分析【原创】,blogAbstract:author&#xff1a;张继飞写在前面&#xff0c;这一切必须是在Linux内核挂载文件系统后。在Linux内核中找到/i…

C语言:如何定义一个和库函数名一样的函数,并在函数中调用该库函数

某个函数fun_1()是在lib内&#xff0c;没法修改的&#xff0c;在程序中大量的使用了该函数&#xff0c;现在想把原本fun_1失效&#xff08;现在失效的方法是#define fun_1(..)),用另外一个函数fun_2(),可是fun_2最后也需要调用fun_1,上面的失效方法感觉就不行了&#xff0c;请问…

C语言可变参数只会用算啥本事?看我来抽丝剥茧干翻它!

看山是山&#xff0c;看山不是山&#xff0c;最终看山才是山&#xff0c;并且是无穷的山峦。当我们学习一门技术的时候&#xff0c;起初是先模仿&#xff0c;但是最终是为了超越&#xff0c;也就是得到秘籍&#xff0c;看到本质。于是&#xff0c;今天来继续看可变参数&#xf…

java8升级java12_为什么现在是升级到Java 8的最佳时机

java8升级java12有兴趣了解如何通过AppDynamics充分利用Java 8的新功能吗&#xff1f; 立即开始免费试用 &#xff01; 今年3月&#xff0c;Oracle发布了近十年来最受期待的版本Java8。自发布以来&#xff0c;最新版本引起了越来越多的关注&#xff0c;各种规模的公司都渴望升…

C语言#include还有些你不知道的事

#include简介在C语言中#include是preprocessor的一条指令&#xff0c;告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。#include "xxx.h" 和 #include有两种方式可以指定插入头文件&#xff1a;#include #include "filename"如果需要包含标…

java常见的ide_在三个Java IDE中生成的三种常见方法

java常见的ide在本文中&#xff0c;我研究了NetBeans 8.0.2 &#xff0c; IntelliJ IDEA 14.0.2和Eclipse Luna 4.4.1生成的三种“通用”方法[ equals&#xff08;Object&#xff09; &#xff0c; hashCode&#xff08;&#xff09;和toString&#xff08;&#xff09; ]的区别…

深度linux安装依赖,Linux -- Ubuntu下载deepin wine依赖问题笔记

问题开始下载deepin-wine安装包, 请稍后…1.1udis86_1.72-2_i3 100%[>] 34.18K 87.3KB/s 用时 0.4s1.2deepin-fonts-win 15%[> ] 31.18K 1.72KB/s 用时 18s1.2deepin-fonts-win 100%[>] 207.88K 26.2KB/s 用时 6.7s2.1deepin-libwine_2 100%[>] 18.97M 132KB/s 用时…

什么是C语言中的隐式函数声明?

「1、什么是C语言的隐式函数声明」在C语言中&#xff0c;函数在调用前不一定非要声明。如果没有声明&#xff0c;那么编译器会自动按照一种隐式声明的规则&#xff0c;为调用函数的C代码产生汇编代码。下面是一个例子&#xff1a;int main(int argc, char** argv) {double x a…

群晖 上传 源文件不存在_群晖NAS连接百度网盘报错?原因是这样的

群晖NAS附带的云同步套件可以与国内外多个网盘连接 , 连接后可从云上下载数据亦可从本地将数据上传到云上。例如通过云同步套件连接百度网盘账号后可以便捷上传和下载数据 , 若网盘空间较大甚至可用来备份整个NAS等。不过现在看来群晖与百度网盘的合作似乎已经结束&#xff0c;…

ssl/tls服务器瞬时_SSL / TLS REST服务器–带有Spring和TomEE的客户端

ssl/tls服务器瞬时在构建系统时&#xff0c;开发人员通常会忽略安全性方面。 安全一直是令人担忧的重要问题&#xff0c;但是它比以前吸引了更高的关注。 就在今年&#xff0c;我们发生了像Heartbleed Bug或CelebrityGate丑闻这样的案件。 这与帖子无关&#xff0c;只是安全真正…