大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第18讲 函数再深入

知识回顾1.向函数传数组2.向函数传字符串3.指针型函数4.函数指针5.作用域
知 识 回 顾 1.向函数传数组 2.向函数传字符串 3.指针型函数 4.函数指针 5.作用域

问题引出o1.不同函数的代码具有不同的作用范围2.不同函数中的变量具有不同的可见性和生命期3.程序员可以通过指定变量的存储类型来改变生命期以上问题是今天要研究的第一个主题:变量的存储类型4.任何函数都可以接收外部数据5.main函数也可以接收外部数据这是今天要研究的第二个主题:命令行参数
问 题 引 出 1.不同函数的代码具有不同的作用范围 2.不同函数中的变量具有不同的可见性和生命期 3.程序员可以通过指定变量的存储类型来改变生命期 以上问题是今天要研究的第一个主题:变量的存储类型 4.任何函数都可以接收外部数据 5.main函数也可以接收外部数据 这是今天要研究的第二个主题:命令行参数

主要内容888888888Boto8.11.变量的存储类型8.12命令行参数8.13递归小结目的要求复习思考题上机与编程实践独立作业
主 要 内 容 8.11 变量的存储类型 8.12 命令行参数 目的要求 复习思考题 上机与编程实践 独立作业 小 结 8.13 递归

变量的存储类型8.11aoa1.变量的存储类型1)四种存储类型staticautoregisterextern(2)说明不同类型的量作用域和生命期不一样(3)声明存储类型标识符数据类型标识符变量名:/定义了一个存储类型为auto的整型变量x*/int x;auto/*定义了一个存储类型为static的浮点型变量y*/static float y;
8.11 变量的存储类型 (1)四种存储类型 (2)说明 1.变量的存储类型 不同类型的量作用域和生命期不一样 auto static register extern (3)声明 存储类型标识符 数据类型标识符 变量名;

2.auto型变量(1)在函数内部定义的非static型的变量,也叫局部变量(2)函数的形参也属于该类型(3)auto型变量的作用范围是它们所在的语句块(4)auto型变量的生命期是语句块的执行时间(5)若未对其初始化,则值不确定
2.auto型变量 (1)在函数内部定义的非static型的变量,也叫局部变量 (2)函数的形参也属于该类型 (3)auto型变量的作用范围是它们所在的语句块 (4)auto型变量的生命期是语句块的执行时间 (5)若未对其初始化,则值不确定

a和b伴随语句块执行的开始而产生intmain(void)1a和b的生命a和b的可见性inta=10:缺省了auto是允许的中期是它们所是它们所在的auto intb=-l:在语句快的语句块...执行时间/*main*/a和b伴随语句块执行的结束而消失图8-15auto型变量现场编程
图8-15 auto型变量 现场编程

3.static型变量(1)使用static关键字定义的变量,也叫静态变量(2)在函数内的叫局部静态变量,在全局区的叫全局静态变量全局和局部静态变量的比较项目局部静态变量全局静态变量产生时机编译时产生,同时初始化作用域全程所在的语句块声明期整个程序的执行时间
3.static型变量 (1)使用static关键字定义的变量,也叫静态变量 (2)在函数内的叫局部静态变量,在全局区的叫全局静态变量 项目 局部静态变量 全局静态变量 产生时机 编译时产生,同时初始化 作用域 所在的语句块 全程 声明期 整个程序的执行时间 全局和局部静态变量的比较

4.extern型变量(1)在函数外未使用static关键字定义的变量(2)在编译时为其分配存储空间(3)作用域是定义后的整个程序,生命期是整个程序运行时间(4)可以通过声明改变其作用域数据类型标识符变量名:extern
4.extern型变量 (1)在函数外未使用static关键字定义的变量 (2)在编译时为其分配存储空间 (3)作用域是定义后的整个程序,生命期是整个程序运行时间 (4)可以通过声明改变其作用域 extern 数据类型标识符 变量名;

*二个普通程序结构*#include...a的作用域inta;外部交量在全局区*b的作用域发生intmain(void)了改变1 /*main*/externintb:/声期语句*intb:外部变量在程序中间*图8-19外部变量的声明现场编程
现场编程 图8-19 外部变量的声明

8.12命令行参数..1.main函数由os调用2.main函数也可以带参数净main明数不带参数*/*main两数带参数*int mainf voidintmaintintargc福char*argvl1)*局部声明*/*局部声明*/*执行语句*/++执行语句*-1 /main*/1/*main*/argc存储用户输入参数的个数argv存储了参数的地址现场编程
8.12 命令行参数 2.main函数也可以带参数 1.main函数由os调用 ◆argc存储用户输入参数的个数 ◆argv[]存储了参数的地址 现场编程
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第17讲 函数深入.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第16讲 函数初步.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第15讲 字符串.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第14讲 指针深入.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第13讲 指针初步.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第12讲 二维数组.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第11讲 一维数组.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第10讲 循环嵌套.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第9讲 循环语句.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第8讲 多路分支程序设计.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第7讲 双路分支程序设计.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第6讲 程序设计基础知识.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第5讲 表达式求值与库函数.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第4讲 表达式.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第3讲 输入与输出.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第2讲 C语言初步(标识符、数据类型、常量).pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第1讲 预备知识与课程概述.pptx
- 大连理工大学:《C语言程序设计》课程授课教案(讲稿)第十一讲 位字段、联合和枚举.pdf
- 大连理工大学:《C语言程序设计》课程授课教案(讲稿)第十讲 结构备注.pdf
- 大连理工大学:《C语言程序设计》课程授课教案(讲稿)第九讲 函数(二).pdf
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第19讲 结构类型.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第20讲 结构深入.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第21讲 联合与枚举.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第22讲 文件初步.pptx
- 大连理工大学:《C语言程序设计》课程教学课件(PPT讲稿)第23讲 文件深入.pptx
- 大连理工大学:《单片机系统及应用》课程教学资源(实验讲义,共十二个).pdf
- 大连理工大学:《单片机系统及应用》课程教学资源(教案讲稿,共二十四讲).pdf
- 大连理工大学:《单片机系统及应用》课程教学资源(PPT课件)第2章 单片机硬件结构.pptx
- 大连理工大学:《单片机系统及应用》课程教学资源(PPT课件)第1章 单片机基础知识.pptx
- 大连理工大学:《单片机系统及应用》课程教学资源(PPT课件)第4章 指令系统与汇编程序设计.pptx
- 大连理工大学:《单片机系统及应用》课程教学资源(PPT课件)第9章 单片机应用中模拟量的输入输出.pptx
- 大连理工大学:《单片机系统及应用》课程教学资源(PPT课件)第5章 单片机的C语言程序设计.pptx
- 大连理工大学:《单片机系统及应用》课程教学资源(PPT课件)第6章 MCS-51系列单片机的中断系统与定时计数器.pptx
- 大连理工大学:《单片机系统及应用》课程教学资源(PPT课件)第8章 单片机应用中的人机接口.pptx
- 大连理工大学:《单片机系统及应用》课程教学资源(PPT课件)第7章 单片机串行通信.pptx
- 大连理工大学:《单片机系统及应用》课程教学资源(PPT课件)第10章 存储器与并行接口扩展.pptx
