深入剖析嵌套调用和链式访问,以及函数的声明和定义(超全面覆盖)

1. 前情提要

在上一篇博客中,我们大致了解了函数的种类,以及自定义函数中形参和实参的具体区别

我们知道实参是需要传递给形参的,但其实形参和实参占据的是完全独立的内存空间

x,y在执行过程中会得到a和b的值,但是x,y的地址和a与b的地址是不一样的,所以我们可以理解为形参相当于实参的一份临时拷贝(实参的值复制到形参里面,然后按照函数体里面规定的形参的算法,最后得出了运算结果)

2. 深入理解return语句

return,顾名思义,为返回的意思,我们最常见到的就是在main函数的结尾会出现一个return 0;

return后面可以是一个数值,也可以是一个表达式,如果是表达式的话,那么就会悠闲执行表达式的结果了

return后面同样可以什么都不写,不写就代表没有返回值,这种写法对应的自然就是函数返回类型是void的情况了

return的返回值和函数的返回类型是不一致的话,系统会自动将return的返回值转换为函数的返回类型,使得这个函数能顺利执行下去,当然,在平时的话,我们自然需要更加的注意尽量不要犯这种错误

注意:一旦return语句执行完毕,该函数就会彻底返回,后面的代码全部不会执行

如果函数里面存在if,Switch等分支语句的话,那么就需要保证每种情况都有return返回,否则就会出现编译错误

3. 数组传参

我们在使用函数的时候,经常会遇到需要将数组作为函数的参数传递给函数,在函数的内部对数组进行操作

我们下面就来进行一个小练习

假设我们需要写一个函数将数组里面的内容全部打印出来

在写关于数组的函数之中,有一个非常重要的思想就是先要遍历数组,也就是能够获取到数组里面的每一个元素

通过for循环得到每一个数组的下标,然后就可以访问到数组里面的每一个元素了,这就是遍历数组的基本思想

4. 嵌套调用和链式访问

4.1 嵌套调用

嵌套调用就是函数之间的相互调用,在我们后期想要写出一个小程序或者是小游戏的话,一定是存在多个函数互相调用的情况,不可能一个函数就能解决所有的问题

我们常说的库函数在主函数里面被应用,实际上就是一个函数嵌套调用的情况了,具体的我们后期再具体介绍对于函数嵌套的各个小练习

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

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

相关文章

Redis的数据类型以及应用场景

Redis - 数据类型 Redis是一种开源的内存数据结构存储,用作数据库、缓存和消息代理。 它支持多种数据结构,如字符串、哈希、列表、集合、有序集合等。 1. 字符串(String) Redis 的字符串(String)数据类型…

SQL(结构性查询语句)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、SQL是什么?二、DDL三、DML四、DQL五、DCL总结 提示:以下是本篇文章正文内容,下面案例可供参考 一、SQL是什么&#xff…

Linux之Shell编程规范与变量

Shell编程规范与变量 本章结构 Shel脚本概述 Shell的作用Shel编程规范重定向与管道 Shell脚本变量 自定义变量特殊变量 Shel脚本概述 Shel脚本的概念 将要执行的命令按顺序保存到一个文本文件给该文件可执行权限可结合各种Shell控制语句以完成更复杂的操作 Shel脚本应…

二叉树(中)

目录 二叉树的基本操作 设置基本变量 获取树中结点的个数 获取叶子结点个数 获取第K层结点的个数 获取二叉树高度 检测值为value的元素是否存在 二叉树的基本操作 如果需要了解树和二叉树的基本内容,可以转至:二叉树(上)-CSDN…

[论文笔记]LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale

引言 今天带来第一篇量化论文LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale笔记。 为了简单,下文中以翻译的口吻记录,比如替换"作者"为"我们"。 大语言模型已被广泛采用,但推理时需要大量的GPU内…

CentOS7 使用yum报错:[Errno 14] HTTP Error 404 - Not Found 正在尝试其它镜像。

CentOS7 使用yum报错:[Errno 14] HTTP Error 404 - Not Found 正在尝试其它镜像。 CentOS镜像下载、VM虚拟机下载 下载地址:www.macfxb.cn 一、问题描述 安装完CentOS7 后 使用yum报错 如下图 二、解决方案 1.查看自己的系统架构 我的是aarch64 uname …

CCPC赛后补题-线性基

模板题:https://www.luogu.com.cn/problem/P3812 线性基可以用一个长度为$ \log_2N $的数组描述值域[1,N],0的情况需要特判。 一个长度为64的线性基可以描述所有的64位整数。 在2024年CCPC网络赛中,考到了线性基。没学过,追悔莫…

Vulnhub靶场 DC-2

靶机地址:https://www.vulnhub.com/entry/dc-2,311/ 导入到VMware里面去, 设置NAT模式 namp扫描一下c段获取ip地址, 然后再扫描ip地址获取详细的信息 得到ip 192.168.75.134 无法访问 按照下面这个方法可以访问了 在kali上的处理 flag1 网站上就存在 提示了一个cewl工具,…

特斯拉的底牌

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

对抗性EM用于变分深度学习:在低剂量PET和低剂量CT中的半监督图像质量增强应用|文献速递--Transformer架构在医学影像分析中的应用

Title 题目 Adversarial EM for variational deep learning: Application to semi-supervised image quality enhancement in low-dose PET and low-dose CT 对抗性EM用于变分深度学习:在低剂量PET和低剂量CT中的半监督图像质量增强应用 01 文献速递介绍 医学影…

【MySQL】从0开始在Centos 7环境安装MySQL

🦄个人主页:修修修也 🎏所属专栏:MySQL ⚙️操作环境:Xshell (操作系统:CentOS 7.9 64位) 目录 准备步骤 卸载原有环境 安装步骤 获取MySQL官方yum源 安装MySQL yum源 结语 准备步骤 卸载原有环境 第一步登录云服务器(注意安装yum需要在root身份下…

CC工具箱使用指南:【字段计算器学习版】

一、简介 这个工具算是Pro自带的字段计算器的扩展版。 工具预制了几种计算模式,通过可视化操作,帮你自动生成代码。 生成代码后,可以直接运行,也可以将代码复制到Pro自带的字段计算器中进行计算。 总之,这是给不会…

基于准静态自适应环型缓存器(QSARC)的taskBus万兆吞吐实现

文章目录 概要整体架构流程技术名词解释技术细节1. 数据结构2. 自适应计算队列大小3. 生产者拼接缓存4. 高效地通知消费者 小结1. 性能表现情况2. 主要改进和局限3. 源码和发行版 概要 准静态自适应环形缓存器(Quasi-Static Adaptive Ring Cache)是task…

【R语言】删除数据框中所有行中没有大于200的数值的行

在Perl中还需要循环按行读入文件&#xff0c;而在R中&#xff0c;一行代码解决问题&#xff1a; df <- df[apply(df, 1, function(x) any(x > 200)), ]这是一个使用apply函数对数据框df进行操作的表达式。apply函数用于对数据框、矩阵或数组进行元素级别的操作。 df&am…

LINQ 和 LINQ扩展方法 (1)

LINQ函数概念&#xff1a; LINQ&#xff08;Language Integrated Query&#xff09;是一种C#语言中的查询技术&#xff0c;它允许我们在代码中使用类似SQL的查询语句来操作各种数据源。这些数据源可以是集合、数组、数据库、XML文档等等。LINQ提供了一种统一的编程模型&#x…

C++ Qt开发:运用QJSON模块解析数据

转载C Qt开发&#xff1a;运用QJSON模块解析数据-阿里云开发者社区 Qt 是一个跨平台C图形界面开发库&#xff0c;利用Qt可以快速开发跨平台窗体应用程序&#xff0c;在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置&#xff0c;实现图形化开发极大的方便了开发效率&…

OpenHarmony鸿蒙( Beta5.0)智能门铃开发实践

鸿蒙开发往期必看&#xff1a; 一分钟了解”纯血版&#xff01;鸿蒙HarmonyOS Next应用开发&#xff01; “非常详细的” 鸿蒙HarmonyOS Next应用开发学习路线&#xff01;&#xff08;从零基础入门到精通&#xff09; “一杯冰美式的时间” 了解鸿蒙HarmonyOS Next应用开发路…

[Web安全 网络安全]-文件包含漏洞

文章目录&#xff1a; 一&#xff1a;前言 1.什么是文件包含漏洞 2.文件包含漏洞的成因 3.文件包含漏洞的分类 4.文件包含漏洞的防御策略 5.文件包含函数&#xff08;触发点Sink&#xff09; 6.环境 6.1 靶场 6.2 其他工具 二&#xff1a;文件包含LFI labs靶场实验…

GD32E230 RTC报警中断功能使用

GD32E230 RTC报警中断使用 GD32E230 RTC时钟源有3个&#xff0c;一个是内部RC振动器产生的40KHz作为时钟源&#xff0c;或者是有外部32768Hz晶振.,或者外部高速时钟晶振分频作为时钟源。 &#x1f516;个人认为最难理解难点的就是有关RTC时钟异步预分频和同步预分频的计算。在对…

图神经网络介绍3

1. 图同构网络&#xff1a;Weisfeiler-Lehman 测试与图神经网络的表达力 本节介绍一个关于图神经网络表达力的经典工作&#xff0c;以及随之产生的另一个重要的模型——图同构网络。图同构问题指的是验证两个图在拓扑结构上是否相同。Weisfeiler-Lehman 测试是一种有效的检验两…