c(麦中凡版)课件第4章

c(麦中凡版)课件第4章

ID:39962226

大小:1.02 MB

页数:38页

时间:2019-07-16

c(麦中凡版)课件第4章_第1页
c(麦中凡版)课件第4章_第2页
c(麦中凡版)课件第4章_第3页
c(麦中凡版)课件第4章_第4页
c(麦中凡版)课件第4章_第5页
资源描述:

《c(麦中凡版)课件第4章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C++语言程序设计--第4章流程控制、函数和文件第4章流程控制、函数和文件本章学习要点C++的流程控制语句作用域的理解C++中的函数函数的声明和定义函数的参数和参数传递函数重载§4.1流程控制语句条件语句if-else;switch循环语句while;for跳转语句break;continue;return;goto.§4.2函数和文件C++中,函数的作用:按功能将复杂的大任务划分为小任务;在类中,用函数来定义方法(method)。C++中的文件:一个文件用于存放多个函数;一个完整的程序可包含多个文件;文件是编译单位,当其内容改变时,只需单独编译该文件,然后与其他文件链接生成.exe。§

2、4.2.1作用域在程序中,标识符不一定是全局可用的,它特定于程序中某一范围,这种范围就叫此标识符的作用域。C++中,标识符的作用域有四种:块:程序中用花括号包括的若干语句;函数:函数内声明的变量;文件:在函数外声明的静态全局变量;全局:全局名。标识符的作用域从声明处开始。§4.2.1作用域intx;//全局xvoidf1(){intx;//局部x,它隐藏了全局xx=1;//给局部变量x赋值{intx;//它隐藏了第一个局部变量xx=2;//给第二个局部x赋值}x=3;//给第一个局部x赋值}int*p=&x;//取全局x的地址§4.2.1作用域intx;//全局xvoidf2(){int

3、x;//隐藏全局x::x=2;//给全局x赋值}外层作用域不能访问内层作用域;利用::可访问当前作用域所隐藏的全局名,但不能访问隐藏的局部名。§4.2.1作用域intx=11;//全局xvoidf3(){inty=x;//变量y用全局x初始化intx=22;//局部xy=x;//y=?}同一作用域内,单个名字引用两个不同的对象,因为名字的作用域总是始于声明点。C++认为:函数的参数名在函数作用域中声明。§4.2.2存储分类符存储分类符用来告诉编译程序如何存储变量。变量定义的一般形式为:存储分类符类型变量名C++中有4个存储分类符:extern(外部的)static(静态的)registe

4、r(寄存器的)auto(自动的)§4.2.2存储分类符extern变量多个文件共享一个变量时,在单独编译单个文件时,将此信息通知编译器,以免编译器为每个文件的全局变量都分配存储区。例:main(){externA,B;//外部变量声明cout<

5、的阶乘值。intfac(intn){staticintf=1;f=f*n;return(f);}main(){inti;for(i=1;i<=5;i++)cout<

6、在函数执行期间形参值发生变化并不回传给实参。地址传递:形参是指针变量,实参是变量的地址。函数调用时,形参指向实参变量单元,数据传递是双向的。【例4-1】编写一个函数,交换两个整型变量的值。值传递:10x20y1020xy2010§4.2.3函数的参数传递地址传递:传递变量的地址(指针)【例4-1】编写一个函数,交换两个整型变量的值。10x20y*x*y2010§4.2.3函数的参数传递引用传递:【例4-1】编写一个函数,交换两个整型变量的值。§4.2.3函数的参数传递#includevoidswap(int&x,int&y){inttmp;tmp=x;x=y;y=tm

7、p;}intmain(){intx=10,y=20;cout<<"交换前:x="<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。