1.函数原型(function prototype)作用:编译阶段对调用函数的合法性检查。
2.内置函数作用:编译时将所调用函数的代码直接嵌入到主调函数中。
优点:节省运行时间。
缺点:增加目标程序的长度。
(1)可以在声明和定义时同时写inline,也可以在其中一处写。
(2)内置函数不包括复杂控制语句。例如:循环和switch语句。
3.函数的调用形式
(1)函数语句 例如:PrintStar();
(2)函数表达式 例如:c=2*max(a,b);
(3)函数参数 例如:max(a,max(a,b));
4.函数重载
可以参数类型不同,可以参数个数不同,可以同时不同,就是不能参数个数、参数类型相同,返回类型不同。
5.函数模板
文件开头要声明 template<typename T>
T max(T a,T b,T c)
类型参数可以不只一个template<class T1,typename T2>
6.默认参数的函数
(1)带默认值的参数必须放在形参的最后。
(2)一个函数不能既是重载又是有默认参数的函数,会引起二义性。
7.变量
(1)全局变量作用:增加函数间的数据联系。
(2)全局变量缺点:占用存储空间;
不符合各模块间内聚性强耦合性弱的要求;
扰乱程序的清晰性。
(3)变量包括数据类型和存储类别(数据在内存中的存储方法)。存储方法又包括静态存储和动态存储。具体包括自动的,静态的,寄存器的,外部的变量。
extern int a;//表示a在其他文件中已定义,作用域可扩展到当前文件。
静态变量不能再其他文件中用extern引用。
8.内存中包括程序区,静态区(全局变量),动态区(函数形参;函数调用时的现场保护和返回地址;函数中的自动变量)。
转载于:https://blog.51cto.com/xfqxj/477115