C语言关键字浅析-return

article/2025/10/20 3:50:31

### C语言关键字浅析系列 ###

### ISO/ANSI C 关键字 ###

return关键字是C程序中最常见的关键字之一

对于一个最简单的demo程序,或者说你最早接触的HELLO WORLD程序,里面至少有两个你最早见到的关键字

int和return(注意,include不是C语言的关键字

return的字面意思的“返回”,其常用在C语言的函数相互调用中

 

return的作用是:

表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值。

 

1、函数调用关系

C语言中一个很关键的语法结构就是函数,而函数可以相互调用,一个简单的函数调用过程大概是这样的:

函数常用于封装代码,就像个黑匣子,我们不需要知道里面的工作原理是怎样的,我们只知道,需要放什么东西进去,最后能得到什么

而最后能得到什么,这就需要函数中的return关键字了,通常它被视作函数返回主调函数的标志,意味着当前函数执行的结束

如果return用在循环或选择等嵌套结构中,则是比break更直接的退出方法:

/* 暴力跳出循环的例子 */
void fun(int a[])
{int i;for (i = 0;i < 10;i++){if(a[i] < 0)return;   /* 判断到不合格条件,直接暴力返回,不执行后面的 */……}……
}/* 常用的函数中检查不合格时的返回 */
/* 一个Windows窗体程序,获取两个文本框中的数字(0-9),然后在另一个标签上显示其和 */
void getResult()
{/* 获取文本框中的值 */char a = getNumber1Text();char b = getNumber2Text();/* 检查获取到的文本 */if (a == ' ' || b == ' ')return;  /* 无效字符,返回,无需再执行后面的部分 *//* 转换类型,计算,显示到标签 */
}

2、return后面带的值

作为函数返回主调函数的标志,有时候函数在return时会带上一个值,而这个值与函数的类型有关

(1)void类型:void表示空、无,void函数是很常用的一种函数,这样的函数不返回任何值,但这个函数本身可以当做一组动作来封装

比如数据库中常见的增删改操作,其通常并不需要特定的返回值,只是一组规定动作,但这样的组合在一起的规定动作很多:

/* 对数据库表添加一项,不需要特定的返回值 */
void insert(id)
{/*按照定义,void类型的函数应该返回一个void值,或者叫return void;但通常我们将其省略,所以常见的void函数最后没有return语句但void函数中可以用return;来返回主调函数*/
}

(2)常量、变量:如果需要函数返回一个结果,比如求和函数等计算类型函数,就需要根据函数的类型返回相应类型的值:

/* return常量,最常见的例子就是main函数 */
int main(void)
{return 0;   /* 0在系统中常表示函数正常执行完毕 */
}/* return常量的另一个常见例子是返回bool类型值 */
bool bigger(int a, int b)
{if (a > b)return true;   /* true和false不是C语言的关键字,但是保留字,表示bool的对/错常量 */elsereturn false;
}/* return变量常用于返回一种处理结果,如计算类函数 */
float addFloat(float a, float b)
{float c;c = a + b;return c;    /* 返回的变量的类型必须与函数类型一致 */
}/* 创建类函数中也常见return变量,如创建新的结构体变量 */
struct node{int age;char sex;};
node * createNewNode()
{node *p = new node;p->age = 22;p->sex = 'm';return p;   /* 指针类型也能作为返回值 */
}

(3)表达式:表达式也能被return,但按优先级会让表达式先计算,然后其实就是返回结果,有时return表达式会更简练:

/* bigger函数的优化 */
bool bigger(int a, int b)
{return (a > b) ? true : false;
}/* addFloat函数的优化 */
float addFloat(float a, float b)
{return a + b;
}/* 函数也是表达式 */
float addFloat(float a, float b)
{return addFloat(a + b, a - b);
}

 

——参考《C Primer Plus第五版》

 


http://chatgpt.dhexx.cn/article/c0eTBPFw.shtml

相关文章

C语言关键字之inline

简介 inline放在函数返回类型前修饰函数&#xff0c;被修饰的函数就叫做内联函数。 static inline void function&#xff08;void&#xff09;在C语言中&#xff0c;函数调用时保存现场&#xff0c;函数中变量的使用等都会占用栈空间。而且进入函数前的保存现场&#xff0c;…

C语言关键字详解(五)带你全面了解 volatile 关键字

目录 一、前言二、最易变的关键字—volatile1、volatile 总体阐述2、CPU运算与内存覆盖3、线程与执行流4、volatile修饰变量 三、总结 一、前言 大家好&#xff0c;欢迎来到C语言深度解析专栏—C语言关键字详解第五篇&#xff0c;在本篇中我们将会介绍C语言当中的另外一个重要的…

c语言关键字之auto

文章目录 1.c语言中&#xff0c;关键字auto用于声明一个变量为自动变量2.c语言中&#xff0c;只使用auto修饰变量&#xff0c;变量的类型默认为整型3.c中&#xff0c;关键字auto是一个类型说明符题目&#xff1a;编写一段程序&#xff0c;读入一段包含标点符号和空格的字符串&a…

C语言深度解剖——C语言关键字

每天进步一点点&#xff0c;坚持带来大改变&#xff01;&#xff01;&#xff01; 前言&#xff1a; 在C语言的学习过程中会遇到许多的关键字&#xff0c;我们是否真的详细了解这些关键字的使用方法和使用场景&#xff0c;下面我们来详解C语言中的32个关键字 1.C语言关键字概览…

c语言标识符与关键字的关系,C语言关键字与标识符

没有人有资格干涉你的梦想&#xff0c;同样的&#xff0c;也没有人有义务支持你的梦想。能让你坚持或放弃的&#xff0c;终究只有你自己。 标识符 只能以数字&#xff0c;字母和下划线组成&#xff0c;但第一个不能以数字开头。用户自己使用一般第一个也不用下划线(当然也不会出…

c语言什么是关键字,c语言关键字是什么

c语言关键字是什么&#xff1f; c语言关键字又称为保留字,就是已被C语言本身使用,不能作其它用途使用的字。 C语言简洁、紧凑&#xff0c;使用方便、灵活。ANSI C标准C语言共有32个关键字&#xff0c;9种控制语句&#xff0c;程序书写形式自由&#xff0c;区分大小写。把高级语…

C语言的32个基本关键字

1、数据类型关键字&#xff08;12个&#xff09; (1) char &#xff1a;声明字符型变量或函数 注&#xff1a;char 占一个字节&#xff0c;也就是 8 个二进制位&#xff0c;但它表示的是有符号的类型&#xff0c;所以表示的范围是 -128~127 &#xff1b;uchar 表示无符号的类型…

C语言的32个常用关键字

目录 前言 一、关键字是什么&#xff1f; 二、关键字使用方法 1.关键字分类 2.使用方法&#xff08;详解&#xff09; 1.数据类型关键字 int&#xff0c;float&#xff0c;double&#xff0c;charshort&#xff0c;long&#xff0c;signed&#xff0c;unsignedunion&#x…

C语言32个关键字详解

以下内容建议大家收藏&#xff0c;全是干货&#xff0c;建议反复观看&#xff01;&#xff01;&#xff01; Lets Go ! ! ! 首先我们把 C89(C90) 的所有关键字进行一下分类&#xff0c;方便大家理解。 数据类型关键字(12个)&#xff1a; char、short、int、long、signed、unsi…

android将手机能当蓝牙耳机使用吗,一种利用android手机作为蓝牙适配器的蓝牙耳机测试系统及其测试方法与流程...

本发明涉及蓝牙耳机测试的技术领域,特别涉及一种利用android手机作为蓝牙适配器的蓝牙耳机测试系统及其测试方法。 背景技术: 目前蓝牙耳机测试采用如下技术方案: 1、开发蓝牙适配器: 从耳机厂商处获取配置信息,根据配置信息开发蓝牙dongle(蓝牙适配器); 2.测试蓝牙耳机:…

手机音频口通信

1. 为什么用音频口通信而不用其他接口&#xff1f; 原因是音频口简单、廉价、每个智能手机上都有而且有大量的资料可供查阅。其他的接口诸如usb&#xff0c;firewire等&#xff0c;有的只是安卓手机上有&#xff0c;有的只是iPhone手机上有&#xff0c;即使是一般安卓手机上…

软件测试教程之手机软件测试方法

第一&#xff1a;兼容性测试&#xff08;转载来源&#xff1a;千锋&#xff09; 针对App通常会考虑这些方面&#xff1a; 1)操作系统版本 包括Andoird版本&#xff0c;iOS版本 2)屏幕分辨率 android 800*480, 960*640,1280*720(720p),1920*1080(1080p),2560*1440(2k). 对于iOS,…

手机语音通讯测试(Mobile Phone Communication Test)

手机作为个人电子设备,已然成为人们日常生活的中心,其语音通讯质量的好坏直接影响客户黏性。许多标准化组织和运营商对手机的通话质量有详细客观的定义,如中国移动,美国T-Mobile均对手机入网有严格的要求,包括手机通话的延时,及在有一定网络损耗下的语音通话质量等等。 手…

声道测试音频_AirPods Pro 空间音频的这7个问题,你都了解吗?

大家好&#xff0c;我是没能改变世界&#xff0c;却轻松被手机改变的不1不2。 真无线蓝牙耳机 AirPods Pro 空间音频的这7个问题&#xff0c;你都了解吗&#xff1f; 这篇文章的内容是AirPods Pro 空间音频的固件升级、升级故障、使用体验、空间音频和立体声的区别相关的问题&a…

一篇读懂:Android/iOS手机如何通过音频接口(耳机孔)与外设通信

一文读懂Android/iOS手机如何通过音频接口与外设通信 更多技术干货&#xff0c;欢迎扫码关注博主微信公众号&#xff1a;HowieXue&#xff0c;一起学习探讨软硬件技术知识经验&#xff0c;关注就有海量学习资料免费领哦&#xff1a; 目录 一文读懂Android/iOS手机如何通过音频接…

嵌入式学习笔记(一)嵌入式操作系统测试

嵌入式操作系统产品在学习的过程中&#xff0c;了解产品特性能够有助于学习产品功能&#xff0c;并且能够从用户角度发掘产品需要满足的重要特征&#xff0c;从而提炼产品特点&#xff0c;并且化作产品亮点&#xff0c;转化为产品未来占领市场、提升竞争力的关键切入点。 通过…

专业音响常用测试软件,音响师怎么测试音响?离不开这几款音频处理软件!

原标题:音响师怎么测试音响?离不开这几款音频处理软件! 随着计算机技术的快速发展,如今的音响圈大部分设备器材都已经开始迈入数字时代,过去用来作为现场音乐播放的CD机、硬盘机等都被现今以计算机为主体的音频工作站所代替,这样的数字变革不仅带来了音质上的提高,同时也…

linux数字音频播放器,Moode Audio Player数字音频播放系统的体验

Element14 Raspberry Pi 3B Raspberry Pi 3B ARM开发板封装 Volumio OS数字音频播放系统-主页控制主界面 上周末,我们为几台ARM微型计算机推出了Raspberry Pi [Raspberry Pi]和数字音频播放系统Volumio OS. 它可以以较低的成本和简单的安装模式将USB声卡放到消费者手中. 或者将…

如何用计算机装手机系统,教你在手机上安装Windows系统

上图是在手机上运行Windows系统时的实拍效果。回归正题,如何把电脑系统安装在手机上?01 要实现在手机上安装Windows系统,需要用到两个文件: Limbo+Windows精简镜像 其中,Limbo为后续安装的Windows系统提供了一个运行环境,它是一个手机应用软件,而Windows精简镜像则是最终…

《手机音频》参数与选择

一、手机音频&#xff1a;智能手机的音频处理电路主要处理手机的声音信号。它主要负责接收和发射音频信号&#xff0c;是实现手机音频交互的关键电路。智能手机音频处理电路主要包括&#xff1a;音频信号处理芯片&#xff08;集成ADC/DAC&#xff09;、音频功率放大器、话筒(麦…