您的位置:首页 > 其它

数组、函数、变量/作用域/存储区/生命周期/程序优化、exit标准函数、递归函数

2016-01-12 15:59 344 查看
数组:

(1).一维数组初始化

int arr[5]={1,2,3,4,5};

若初始化数据个数超过存储区个数,则多余的数据被丢掉

若初始化数据个数少于存储区个数,则后面的存储区自动被初始化为0

若初始化数据个数和存储区个数一样,则可以省略数组声明里的存储区个数

(2).二维数组初始化

int arr[2][3]={{1,2,3},{4,5,6}};

函数:

函数调用过程中通常伴随着函数间的数据传递

数据传递存在两个相反的方向,既可以从调用函数传递给被调用函数,也可以从被调用函数传递给调用函数.

无论从哪个方向的数据传递,都需要使用被调用函数提供的存储区来记录数字

main()函数里面的叫做调用函数,main()函数外面的叫做被调用函数.

数组和函数的关系

数组可以作为函数的形式参数

数组作为形式参数的时候,形参和实参都是同一个存储区



生命周期:一个存储区只能在某个时间范围内可以使用,这个时间范围叫做存储区的生命周期

对存储区的使用不受作用域的限制,而只受生命周期的限制

作用域:能使用某个变量的所有语句叫做变量的作用域

变量:

变量分为全局变量、局部变量、静态全局变量、静态局部变量
http://blog.sina.com.cn/s/blog_4aae007d0100inxi.html
全局变量和局部变量的关系:

1. 全局变量会占用更多的内存,因为其生命周期长

(全局变量,其生命周期是整个程序执行的时间范围

局部变量,其生命周期是函数某一次执行的时间范围)

2. 使用全局变量程序运行速度会更快,因为内存不需要再分配

3. 局部变量的作用域是函数内部的所有语句,全局变量的作用域是包含程序中的所有语句

4. 没有初始化的全局变量初始化为0

5. 全局变量和局部变量可以重名,这个时候优先选择局部变量

全局变量与静态全局变量的关系:

全局变量:在整个工程文件内都有效

静态全局变量: 只在定义它的文件内有效

作用域:定义点到程序结束,程序运行结束后才释放所占用的内存.

即使两个不同的源文件都定义了相同名字的静态全局变量,它们也是不同的变量

局部变量与静态局部变量:

局部变量:在定义它的函数内有效,但是函数返回后失效

静态局部变量:只在定义它的函数内有效,只是程序仅分配一次内存,函数返回后,

该变量不会消失, 可以跨函数使用静态局部变量的存储区









exit标准函数:

exit标准函数可以立刻结束程序的执行

需要包含stdlib.h头文件

这个函数需要一个整数类型的实际参数,它用来告诉计算机程序的结束情况,0表示程序正常结束



递归函数:

1.编写语句描述问题的分解方式(假设递归函数已经完成)

2.在函数开头编写分支处理不可分解的情况(这个函数必须能让函数结束)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: