8.2函数定义的一般形式 1.无参函数的定义形式 类型标识符函数名() 声明部分 语句 void printo i printf(Hello)
8.2 函数定义的一般形式 1.无参函数的定义形式 类型标识符 函数名() { 声明部分 语句 } void print() { printf(“Hello”); }
2.有参函数定义的一般形式 类型标识符函数名(形式参数表列) 形式参数说明 说明部分 语句} 例如: int max(intx,inty)-没有分号 i int z: /米函数体中的说明部分*/ z=X>y?x:y return (z)
2.有参函数定义的一般形式 类型标识符 函数名(形式参数表列) 形式参数说明 {说明部分 语句 } 例如: int max(int x,int y)---没有分号 { int z; /*函数体中的说明部分*/ z=x>y?x:y; return(z); }
3.可以有“空函数”,它的形式为: 类型说明符函数名() 例如: dummy ()
◼ 3.可以有“空函数”,它的形式为: 类型说明符 函数名() { … } 例如: dummy() { }
8.3函数参数和函数的值 8.3.1形式参数和实际参数 在调用函数时,主调函数和被调用函数之间有数据传 递关系。 在定义函数时函数名后面括弧中的变量名称形参 在调用函数时,函数名后面括弧中的表达式称为“实际参 数,简称实参。 [例8.2]main0 I int a, b, c scanf (%d, %d", &a, &b) C-max (a, printf(” max is %d", c) a,b为实参,x,y为形参(max函数中的参数)
8.3 函数参数和函数的值 8.3.1 形式参数和实际参数 在调用函数时,主调函数和被调用函数之间有数据传 递关系。 在定义函数时函数名后面括弧中的变量名称形参; 在调用函数时,函数名后面括弧中的表达式称为“实际参 数,简称实参。 [例8.2] main() { int a,b,c; scanf(”%d,%d” ,&a,&b); c=max(a,b); printf(”max is %d”,c); } a,b 为实参,x,y为形参(max函数中的参数)
关于形参与实参的说明: 1.形参变量,在未出现函数调用时,它们不占内 存中的存储单元。只有在发生函数调用时形参才被分 配内存单元。在调用结束后,所占的内存单元也被释 放 2.实参可以是常量、变量或表达式,如: maxa+b, a-b) 但要求有确定的值。在调用时将实参的值赋给形参变量 (如果形参是数组名,则传递的是数组首地址,而不 是变量的值)。 3.在被定义的函数中,必须指定形参的类型。 4.实参与形参的类型应一致,否则发生“类型不 匹配”的错误。字符型与整型可以互相通用
关于形参与实参的说明: 1.形参变量,在未出现函数调用时,它们不占内 存中的存储单元。只有在发生函数调用时形参才被分 配内存单元。在调用结束后,所占的内存单元也被释 放。 2.实参可以是常量、变量或表达式,如: max(a+b,a-b); 但要求有确定的值。在调用时将实参的值赋给形参变量 (如果形参是数组名,则传递的是数组首地址,而不 是变量的值)。 3.在被定义的函数中,必须指定形参的类型。 4.实参与形参的类型应一致,否则发生“类型不 匹配”的错误。字符型与整型可以互相通用