函数 定义: 函数头的末尾无分号 若函数类型为非vod类型,则函数中应有 return语句 返回同类型的数据。 参数一一说明类型 调用: 以语句的形式调用(函数类型为void) 以表达式形式调用(函数类型非void 说明 函数定义在后调用在前时需要。 参数传递: 值参数—单向 地址参数(数组名或指针变量)--参数本身单向传递 但指针变量所指内容或数组元素的改变是双向的 引用参数 形参的改变影响实参
函数 定义: ➢ 函数头的末尾无分号 ➢ 若函数类型为非void 类型,则函数中应有return语句 返回同类型的数据。 ➢ 参数一一说明类型 调用: 以语句的形式调用(函数类型为void) 以表达式形式调用(函数类型非void) 说明: 函数定义在后调用在前时需要。 参数传递: 值参数——单向 地址参数(数组名或指针变量)-------参数本身单向传递, 但指针变量所指内容或数组元素的改变是双向的 引用参数————形参的改变影响实参
参数缺省: void fun(inti, int j, int k, int m=3, int n=4) 假设函数调用语句为 fun(1,2); ∥错误,至少应有三个实参 fun(10,20,30,50);错误,只能从左至右匹配 函数重载要求: >参数个数不同 参数类型不同 函数名相同
参数缺省: void fun(int i, int j, int k, int m=3,int n=4) 假设函数调用语句为: fun(1,2); //错误,至少应有三个实参 fun(10,20,30, ,50); //错误,只能从左至右匹配 函数重载要求: ➢参数个数不同 ➢参数类型不同 函数名相同
变量的作用域和存储类别 静态变量只初始化一次,而动态变量每调用一次函数便初 始化一次。 test( Rint i-0; static int j=0 ++j++; cout<≤i<j<endl; main Rint i test(; i=13j=1 test(; i=1,j=2
变量的作用域和存储类别 静态变量只初始化一次,而动态变量每调用一次函数,便初 始化一次。 test() {int i=0;static int j=0; i++;j++; cout<<i<<j<<endl; } main() {int i; test(); test(); } i=1,j=1 i=1,j=2