news 2026/7/30 7:53:54

【00006】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【00006】

二、C语言

2.5函数

1.功能

能够避免重复性代码
可以让程序模块化

2.函数三种形式

(1)函数定义

函数类型 函数名(数据类型1 形参1, 数据类型2 形参2, ...)
{
函数体;
return 返回值;
}
函数名:与变量名要求保持一致
形参:形式参数,用来展示函数对数据的处理的方式
函数类型:函数运行结果的类型
函数类型如果不写默认为int类型
返回值:函数的运行结果

返回值类型与函数类型不一致时,以函数类型为准

(2)函数的调用

函数名(实参1, 实参2, ...);

调用:可以通过函数名加实参使用函数
主调函数:主动调用函数的函数
被调函数:被别人调用的函数
传参:主调函数调用被调函数,会将实参的值传递给形参
实参个数与形参个数必须一一对应
如果实参与形参类型不匹配,则将实参类型强制类型转换为形参类型再传参
函数调用结果类型为函数类型
函数调用结果的值为函数的返回值

(3)函数的声明

如果被调函数在主调函数下方定义,需要在主调函数上方声明被调函数
如果被调函数在主调函数上方定义,不需要声明被调函数

(4)变量的作用域和生存周期

1. 变量的作用域

局部变量:变量作用域在定义该变量最近的大括号内

全局变量:变量的作用域在本文件中均可使用

2. 变量的生存周期

变量从被开辟空间到空间被回收的整个过程称为生存周期

(5)变量的存储类型

1.变量的定义

存储类型 数据类型 变量名;

2.存储类型
(1)自动型存储、局部变量(默认):auto

将变量存放在栈区
局部变量未经初始化为随机值
执行到变量定义时为变量开辟空间
执行到超过变量作用域范围被回收

2. 寄存器存储:register

将变量存放在CPU内部的寄存器中,如果寄存器存满了等价于auto类型

3.外部声明:extern

声明变量或者函数是外部存储

4.静态存储:static

将变量存放在静态区中
未经初始化时为0值
编译代码时为变量分配空间,执行时加载到数据区中
程序结束回收空间
限定变量/函数作用域只能在本文件中使用
防止多文件编程时变量名或函数名冲突

(6)函数传参

1. 值传递

实参将值传递给形参,形参拿到实参的值实现后续的操作

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/30 7:51:54

靠谱的医疗垃圾焚烧炉生产厂家

在当今社会,医疗行业不断发展,医疗垃圾的处理成为了一个至关重要的问题。医疗垃圾如果处理不当,不仅会对环境造成严重污染,还可能引发疾病传播,威胁公众健康。因此,选择一家靠谱的医疗垃圾焚烧炉生产厂家至…

作者头像 李华
网站建设 2026/7/30 7:48:07

计算机组成原理中断实验:从硬件设计到软件调试的完整实践

1. 项目概述:从“中断”这个神来之笔说起如果你写过单片机程序,或者接触过任何嵌入式开发,一定对“中断”这个概念不陌生。它就像一个随时待命的管家,当有紧急事件(比如按键按下、数据到达)发生时&#xff…

作者头像 李华
网站建设 2026/7/30 7:46:57

CI中自动录制失败测试的Playwright Trace:原理、配置与工程实践

1. 项目概述:为什么我们需要在CI中自动录制失败用例的Trace? 在自动化测试的世界里,最让人头疼的往往不是写测试用例,而是当它们在持续集成(CI)环境中失败时,如何快速定位问题。你可能会遇到这…

作者头像 李华
网站建设 2026/7/30 7:46:46

基于分数阶Hessian滤波与APC分析的视网膜血管分割技术

1. 项目背景与核心挑战 视网膜血管分割是医学图像处理中的经典难题,其核心价值在于辅助诊断糖尿病视网膜病变、高血压眼底改变等疾病。传统方法面临三大技术瓶颈: 血管结构的多尺度特性:从主干血管(直径约120μm)到末…

作者头像 李华