快速了解C语言基础(10)(二维函数)

发布时间:2026/8/3 5:56:53

快速了解C语言基础(10)(二维函数)
8.函数和一维字符型数组传参char 数组名[100]定义返回值 函数名 (char 数组名[]){函数体}调用函数名(数组名)调用函数名(数组名);void print_str(char str[]){}print_str(str)注意(1)一维字符型数组作为函数参数传递时只需要传递数组即可不需要传递长度因为字符型数组保存的字符串末尾有‘\0’结束标志(2)数组作为函数参数传递时本质传递的是数组的首元素地址(在被调函数族sizeof(数组名形参)) ----》本质求地址在计算机内存中的大小。9. 函数和二维整形数组传参定义返回值 函数名int 数组名[][列数]int 行数{}调用函数名(数组名行数)int a[3][4] {0};void print_2D_array(int a[][4], int hang){}printf_2D_array(a, sizeof(a)/sizeof(a[0]))注意(1)二维整形数组传参时形参必须说明是二维数组行数可以省略列数不能省略。形参int a[][列数](2)在自定义的函数中行数无法计算所以可以通过参数的方式传递(3)在自定义的函数中列数可以计算sizeof(a[0]) / sizeof(a[0][0])10.函数和二维字符型数组传参定义返回值 函数名(char 数组名[][列数], int 行数){}调用函数名(数组名 行数);char str[3][100] {0};void print_2DC_array(char str[][100], int hang){}print_2DC_array(str, 3)11.变量的作用域和生命周期1)标识符作用域空间角度作用域标识符/变量可以被使用的范围局部作用域在{}内部被定义的变量的作用范围局部变量定义在局部作用域中的变量函数内部定义的变量、函数形参全局作用域可使用范围在全局{}外面。比如定义函数全局变量定义在全局作用域的变量。注意(1)标识符必须先定义再使用。(2)在相同作用域中不能定义同名标识符变量、函数。(3)在具有包含关系的作用域中出现了同名标识符外层标识符在内层不可见就近原则2)变量的生命周期时间角度变量的生命周期从变量的空间开辟到空间回收对应的生存期。动态生命周期局部变量在被定义的时候开辟空间超出其作用域范围空间被回收。静态生命周期和程序运行的生命周期一样长全局变量从程序运行之前空间开辟程序运行结束空间被回收。static修饰的静态变量从程序运行之前空间开辟程序运行结束空间被回收。1.作用域没发生变化局部作用域。2.生命周期变为静态生命周期总结:局部变量(1)作用域在局部超出局部作用域无法访问(2)动态生命周期定义时开辟空间超出作用范围空间被回收(3)局部变量保存在栈区未被初始化为随机值。全局变量/static静态变量(1)全局变量作用域在全局static静态变量作用域在局部(2)静态生命周期程序运行之前空间开辟程序运行结束空间被回收(3)全局变量/static静态变量保存在数据区。(4)全局变量/static静态变量未被初始化时默认为0。(5)未初始化的全局变量/static静态变量存储在.bss段.bss段系统默认清0.(6)已初始化的全局变量/static静态变量存储在.data段3)变量的存储类型int a存储类型 数据类型 变量名;变量的存储类型auto默认存储类型static(1)static修饰局部变量静态变量具备静态生命周期延长局部变量的生命周期。(2)static修饰函数该函数只允许在当前原文件中被调用。(3)static修饰全局变量该变量只允许在当前文件中使用。register寄存器变量register修饰变量时建议编译器将该变量存储在寄存器中register int i 0;register仅仅是一个建议。int *p;p i; //x i是寄存器变量无法取址extern修饰全局变量/函数声明。(1)extern修饰全局变量用来声明全局变量表示允许被外部的.c使用。(2)extern声明函数表示该函数允许被外部的.c使用

相关新闻

Unity动画系统全流程解析:从状态机到性能优化

Unity动画系统全流程解析:从状态机到性能优化

2026/8/3 5:56:53

1. 项目概述:从静态到动态的魔法在Unity的世界里,让一个静止的物体“活”起来,是每个开发者都会经历的第一步,也是最富成就感的一步。无论是让一个角色挥剑、一个门缓缓打开,还是一个UI按钮优雅地弹出,动画…

MMC电压源换流器控制技术解析与应用

MMC电压源换流器控制技术解析与应用

2026/8/3 5:56:53

1. MMC电压源换流器控制器的核心价值在电力电子领域,模块化多电平换流器(Modular Multilevel Converter, MMC)已经成为中高压直流输电系统的首选拓扑结构。与传统两电平或三电平换流器相比,MMC具有输出电压谐波含量低、开关损耗小…

管理者必读的AI管理转型手册(2024黄金窗口期倒计时)

管理者必读的AI管理转型手册(2024黄金窗口期倒计时)

2026/8/3 5:56:52

更多请点击: https://codechina.net 第一章:AI管理转型的时代必然性与战略紧迫性 人工智能已从技术实验阶段跃升为组织核心生产力引擎。当全球头部企业平均将23%的IT预算投向AI治理与模型生命周期管理(据Gartner 2024年报告)&…

Django旅游评论数据分析系统开发实践

Django旅游评论数据分析系统开发实践

2026/8/3 8:27:00

1. 项目概述 这个基于Django框架的旅游评论数据分析推荐系统,是我去年指导的一个大数据专业本科毕业设计的完整实现方案。系统通过爬取川渝地区主流旅游平台的用户评论数据,结合数据可视化技术,为旅游从业者和游客提供直观的数据洞察和个性化…

AI选择性去背景音乐实测:只动BGM不动其他音效

AI选择性去背景音乐实测:只动BGM不动其他音效

2026/8/3 8:27:00

选择性处理BGM的技术核心,是让音源分离模型从混合信号中定位背景音乐,同时保留人声、环境音、动作音效和语气声。AI可以显著降低误伤,但不能承诺任何素材都“零误伤”。智马翻译将人声、BGM和语气声分层处理,短剧场景人声SDR可达1…

SpringBoot+Vue管理系统开发实战与架构解析

SpringBoot+Vue管理系统开发实战与架构解析

2026/8/3 8:27:00

1. SpringBoot Vue 管理系统架构解析 现代企业级应用开发中,前后端分离架构已成为主流技术选型方案。SpringBoot作为Java生态中最流行的后端框架,与Vue.js这一渐进式前端框架的组合,能够快速构建出功能完善、用户体验优良的管理系统。这种技…

【迅为iMX6Q】开发板 U-Boot 2026.04 emmc 或者 SD卡 启动

【迅为iMX6Q】开发板 U-Boot 2026.04 emmc 或者 SD卡 启动

2026/8/3 8:27:00

相关参考 【迅为iMX6Q】开发板 u-boot 2015.04 SD卡 启动 【迅为iMX6Q】开发板 u-boot 2020.04 SD卡 启动 【迅为iMX6Q】开发板 u-boot 2022.04 SD卡 启动 前言 最近工作接触 嵌入式 Linux 的开发,因此找到了买了很久的 迅为imx6q 开发板,尝试再熟悉…

Python从入门到实战:系统学习路径与四大核心应用模块详解

Python从入门到实战:系统学习路径与四大核心应用模块详解

2026/8/3 8:27:00

很多朋友在刚开始学习Python时,常常感到迷茫:网上教程太多,质量参差不齐,知识点零散,不知道从哪里开始,也不知道学到什么程度才能找到工作或接项目。从环境安装、基础语法,到爬虫、数据分析、We…

Unity3D离线安装全攻略:用Download Assistant实现无网络环境部署

Unity3D离线安装全攻略:用Download Assistant实现无网络环境部署

2026/8/3 8:17:00

1. 项目概述:为什么我们需要离线安装Unity? 在游戏开发、工业仿真、数字孪生等众多领域,Unity3D早已成为核心的实时内容创作平台。然而,无论是身处网络环境受限的保密研发中心、出海船舶上的培训项目,还是需要为数十台…

ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案

ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案

2026/8/3 4:49:52

ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾经从网易云音乐下载了心爱的歌曲&am…

分布式配置中心选型实战:Nacos与Consul在创业场景下的对比

分布式配置中心选型实战:Nacos与Consul在创业场景下的对比

2026/8/2 0:04:43

分布式配置中心选型实战:Nacos与Consul在创业场景下的对比工程导读:本文深入讨论 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比 在生产工程实践中的核心落地方案。基于 分布式架构与微服务设计 视角,剖析实际痛点、架…

MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案

MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案

2026/8/2 0:04:43

MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案 【免费下载链接】MoneyPrinterPlus AI一键批量生成各类短视频,自动批量混剪短视频,自动把视频发布到抖音,快手,小红书,视频号上,赚钱从来没有这么容易过! 支持本地语音模型chatTTS,fasterwhisper,…

从提示词小白到AI内容架构师(20年技术老兵的6阶能力跃迁图谱,仅剩最后87个免费解读名额)

从提示词小白到AI内容架构师(20年技术老兵的6阶能力跃迁图谱,仅剩最后87个免费解读名额)

2026/8/3 0:06:20

更多请点击: https://codechina.net 第一章:AI写作能力跃迁的认知革命 过去五年,AI写作已从“模板填充”迈入“语义共建”阶段——模型不再仅复述训练数据中的句式,而是基于跨文档推理、意图锚定与风格自适应,动态构建…

AU-48八米拾音的信噪比衰减与降噪门限耦合分析

AU-48八米拾音的信噪比衰减与降噪门限耦合分析

2026/8/3 0:06:20

一、"拾音 8 米"这个指标该怎么读AU-48 的规格里,麦克风拾取范围写的是 10cm-800cm,配合 T1/T2 参数切换可选四档:中距离 0.5-2m、近距离 0.1-0.2m、远距离 0.5-5m、超远距离 0.5-8m。"能拾音 8 米"这句话本身没错&#…

LangChain 从 Demo 到团队落地,真正卡壳的是哪一步?

LangChain 从 Demo 到团队落地,真正卡壳的是哪一步?

2026/8/3 0:06:20

聊《LangChain并不难,难的是知道什么时候不该用》之前,先说一句实在的:别急着背概念,先看它在真实项目里到底解决什么问题。 摘要 摘要:很多人学 LangChain 都是从调个 API 开始,跑通一个 Demo 觉得挺简单…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/2 17:06:42

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/3 7:25:44

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/3 2:41:27

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…