当前位置: 首页 > news >正文

C语言(长期更新)第6讲:函数(二)

C语言(长期更新)
第6讲:函数(二)

  

   跟着潼心走,轻松拿捏C语言,困惑通通走,一去不回头~欢迎开始今天的学习内容,你的支持就是博主最大的动力


知识回顾

今天我们来学习新课函数的内容,坐稳了,我们发车,gogogo!


6.5 数组作为函数参数

前面我们使用的参数都是变量,那么数组是否也可以作为参数使用呢?当然可以。

6.5.1一个例子

下面我们看一个🌰

将一个数组中元素全置为-1,再打印出来

首先我们进行任务分解,因为函数的本质就是一个一个执行分任务的子程序

置为-1需要一个函数set_arr(函数名最好反应其功能)

打印需要另一个函数print(也可在主函数main函数直接打印,此处方便练习)

建议先写主函数,再根据需要拆解任务,写对应的函数

6.5.2 几个关键点

需要注意的是

        1. 一一对应 函数形参个数需和实参个数匹配

        2. 形参数组大小 一维可省略不写,二维行可省略,列不行

        3. 数组传参,形参不会创建新数组

        也就是说,形参操作的数组和实参数组是一个数组

        地址相同,只是在函数运行是换了个名字

我们尝试监测上面的代码,就会发现arr1 arr2 arr3 地址是一样的

7. 嵌套调用

函数之间的相互调用

举个🌰

计算某年某月多少天

1.任务分解

首先确定月份,其次,是2月,看是不是闰年

2.函数实现

get_days_of_month();

is_leap_year();

值得注意的是,函数可以嵌套调用,但不可以嵌套定义

8.链式访问

链式访问就是像链条一样,环环相扣,上一个函数的返回值作为下一个函数的参数使用

上面用了两行代码完成打印字符串长度的任务

使用中间变量len储存strlen返回值,再作为printf参数调用

而使用链式访问,直接作为参数,一行就可

9.printf函数的返回值

print函数返回打印的数字或字符的总数,返回类型为int

下面我们看一个有趣的代码

10.函数定义和声明

10.1单个文件

函数的调用⼀定要满足,先声明后使用

函数的定义也是⼀种特殊的声明,所以如果函数定义放在调用之前也是可以的。

换个写法

函数的定义只能放前面;放后面的话函数的声明必须放前面

10.2 多个文件

一般情况下,函数和类型的声明放在头文件(.h)中,而函数的实现放在源文件(.c)中


   好了今天的学习内容就到这里啦,谢谢你的陪伴,我是潼心,下次再见~如果这篇文章对你有帮助的话。请务必给主播一个一键三连,球球了,这对主播很重要~

http://www.dtcms.com/a/303637.html

相关文章:

  • 复现《Local GDP Estimates Around the World》论文的完整指南
  • 历史版本的vscode下载地址
  • 模型压缩的一些整理
  • Fortran实现 3维反距离加权(IDW)插值算法
  • ETH 交易流程深度技术详解
  • Datawhale AI夏令营 task2 笔记问题汇总收集
  • 力扣988. 从叶结点开始的最小字符串
  • 商城系统-项目测试
  • 信息搜集目的原则方法思路工具(二)
  • DDoS攻击防御:从5G到T级防护方案全对比
  • 利用软件定义无线USRP X410、X440 电推进无线原型设计
  • Sentinel 不同层面的流控保护
  • 【图像处理基石】基于暗光图像恢复颜色有哪些难点?
  • resnet中的Bottleneck
  • Google Doppl:重新定义虚拟试衣的AI革命
  • MCP协议全景解析:从工业总线到AI智能体的连接革命
  • 结合二八定律安排整块时间
  • 正向代理和反向代理的理解
  • 【安卓笔记】OOM与内存优化
  • 常见的JVM虚拟机的参数详解
  • OpenGL进阶系列22 - OpenGL SuperBible - bumpmapping 例子学习
  • Python动态规划:从基础到高阶优化的全面指南(3)
  • nvim tagbar安装
  • C#:基于 EF Core Expression 的高性能动态查询构建实战 —— 面向大数据量环境的查询优化方案(全是干货,建议收藏)
  • barba.js单页面应用程序
  • 基于VHDL的神经网络加速器设计实战
  • C++算法实例精讲
  • MKS E28H 0.05-100 Torr 加热 (100°C) Baratron 电容压力计,带蚀刻传感器 手侧
  • C++入门自学Day2-- c++类与对象(初识2)
  • 一文理清 Linux 软件管理核心知识:从程序组成到包管理工具