函数 C语言为函数式语言
函数的分类
1)从函数定义的角度看,函数可分为库函数和用户自定义函数
2)按返回值又可分为有返回值函数和无返回值函数
3)从主函数和调用函数之间数据传输的角度又可分为无参函数和有参函数
函数的基本格式:
返回值类型 函数名称(函数参数){
函数体;
}
1. 无参无返回值 函数定义
一般形式如下:
void 函数名(){ 声明部分 语句 } void 无返回值函数
2. 无参有返回值函数定义
一般形式如下:
返回值类型 函数名(){ 声明部分 语句 return 返回值类型变量或常量 //返回给主调函数 }
3. 有参无返回值函数定义
一般形式如下:
void 函数名(形参表列){
声明部分 语句 } 形式参数表列格式:类型 变量名,类型 变量名....
4. 有参有返回值函数定义
一般形式如下:
返回值类型 函数名(形参列表){ 声明部分 语句 return 返回值常量或者变量 }
注意:定义函数时注意函数名不能重复
5. 函数的参数-形参
1) 形参定以后并不会立即分配存储空间 2) 多个形参可以用逗号分隔 3) 形参的类型可以不同 4) 在函数中不能定义和形参同名的变量
6. 函数的参数-实参
调用函数的时候,函数名后面的小括号中的参数,为实参 实参可以使变量、常量、表达式
7. 函数的声明
在主调函数中调用某函数之前应对该被调函数进行说明
如果被调函数的返回值是int类型,此时可以不声明
如果被调函数写在主调函数之前,也可不声明
8. 函数的调用
举个小例子
#import <Foundation/Foundation.h>
int max (int x,int y){
return x>y?x:y; }
int main(int argc,const char * argv[]){ //函数表达式 int m=max(34,12)+10;
//函数的调用作为另外一个函数的实参 //函数的嵌套调用 m=max(max(56, 438), 120); printf("m = %d\n",m); return 0; }
9. 函数应用:打印图形
#import <Foundation/Foundation.h>
int main(int argc,const char * argv[]){ //调用自定义方法,打印制定行数的线 void printLineN(int n); printLineN(5); return 0; } //打印一条线 void printLine(){
printf("--------\n");
} //打印自定义行数的线 void printLineN(int n){ //循环 for (int i=0; i<n; i++) { printLine(); } }
10. 补充
视频中的剩下例子就当做作业了~
|