1.在函数调用结束后,形参被释放,实参保持原来的值。因此在函数执行后形参的改变主调函数的实参。
2.内置(内联)函数虽说增加了执行速度,但是会增大目标程序,因此一般只对规模小且执行频繁的函数使用内置,它不能包括控制语句如循环或switch函数。
3.在有默认参数值的函数中,如果有多个形参,指定默认值的形参一定要放在最右侧,否则出错。
4.在使用带有默认参数的函数时有两点要注意:
• (1) 如果函数的定义在函数调用之前,则应在函数定义中给出默认值。如果函数的定义在函数调用之后,则在函数调用之前需要有函数声明,此时必须在函数声明中给出默认值,在函数定义时可以不给出默认值(如例4.8)。
• (2) 一个函数不能既作为重载函数,又作为有默认参数的函数。因为当调用函数时如果少写一个参数,系统无法判定是利用重载函数还是利用默认参数的函数,出现二义性,系统无法执行。
5.全局变量:全局变量增加函数间的数据联系;尽量不使用全局变量,因为:全局变量整个过程都占用空间,而不是在需要的时候开辟。降低函数的通用性,因为函数受到外部的变量影响;过多使用全局变量,降低程序的清晰性。全局变量会被同名局部变量屏蔽。
6.静态区存放的数据::①函数形式参数。在调用函数时给形参分配存储空间。②函数中的自动变量(未加static声明的局部变量,详见后面的介绍)。③函数调用时的现场保护和
返回地址等。
7.如果静态变量不赋初值,则编译时自动初始化为0或空字符。而自动变量不赋初值,它的值是个不确定的值。
8.