C-015.函数的基本概念、定义、调用、返回值、参数和声明
来源:互联网 发布:小灰熊字幕制作软件 编辑:程序博客网 时间:2024/04/30 02:57
1.函数的基本概念
函数:完成特定功能代码块
函数作用:管理代码的函数的优点:提高代码的可读性
提高代码的复用性
提高代码可维护性
函数:函数名不可以重复定义
要给函数起一个有意义的名字
函数特点:只有调用才会执行
void printfHello(){ //定义一个打印hello功能的函数 printf("hello1\n"); printf("hello2\n"); printf("hello3\n");}int main(int argc, const char * argv[]) { //如果我想打印4次 for (int i = 0 ; i < 4; i++) { printfHello(); //执行函数,不用每次都重复写 } return 0;}
2.函数的定义和调用
2.1函数定义的格式
返回类型 函数名称(参数类型 参数名称,参数类型 参数名称,...)
{
语句;
....
return xxx;
}
如何去定义一个函数:
1、根据函数的功能给函数起一个有意义名字
2、确定需不需要传人一些补助的值
3、确定需要返回什么类型的数据给函数调用者
4、完成函数功能
void 当函数没有返回值的时候,就将将函数的返回值类型声明为 void
当函数的返回值类型为void的时候,return 语句可以省略
什么时候需要形式参数:当我们完成某个功能,有写数据我们不能确定,那么这时候就需要外界告诉我们
2.2函数的调用的格式
无返回值:函数名称(实际参数,实际参数,...);
有返回值:返回值类型 类型名称 = 函数名称(实际参数,实际参数,...);
在C语言中不允许函数嵌套:也就是说在函数内部不可以再定义其他函数了
函数可以嵌套调用:在一个函数内部可以调用其他的函数,被调用的这个函数内部还可以再调用其他的函数
void printfHello(){ //定义一个没有返回值,没有参数,功能为打印hello的函数 printf("hello\n");}void printManyHello(int num){ //定义一个有参数没有返回值的函数,打印许多的hello的函数 for (int i = 0; i < num; i++) { printfHello(); }}int sum(int num1,int num2){ //定义一个求和的函数 //int num1 = 2; 在函数内部不能定义与形参同名的变量 return num1 + num2; //返回它们的和}int score(){ //定义一个有返回值,无参数的函数 return 100;}int main(int argc, const char * argv[]) { //使用没返回值,无参数的函数 printfHello(); //使用没返回值,有形参的函数 printManyHello(3); //使用有返回值,有形参的函数 int a = sum(1, 2); //需要定义变量去接收返回值,括号内的输入实参 printf("a = %d\n",a); //使用有返回值,无形参的函数 int b = score(); printf("b = %d\n",b); return 0;}
3.1函数的参数
形参:当定义函数的时候,函数名称后面小括号中参数我们称为形式参数简称形参
实参:当调用函数的时候,函数名称后面小括号中的参数我们称为实际参数简称实参
1、实参与形参是一一对应的
2、形参是什么类型的那么实参也必须传人什么类型的值
3、形参列表中不可以有同名的形参
4、在函数内部也不可以直接定义与形参同名变量
5、基本数据类型作为函数参数传递的时候是值传递
6、值传递:仅仅是把实参的值赋值给形参,改变形参的值,并不影响实参值(重点)
3.2函数的返回值
主调函数:调用其他函数的那个函数
被调函数:在其他中被调用函数
1、函数定义中声明是什么返回值类型,那么在主调函数中就必须时候相同类型的变量接收
2、什么样的返回值类型就必须返回什么样类型的值,确保返回的值的类型与函数定义中返回值的类型一致
3、如果函数的返回值类型不为空就必须返回一个值
3.3return
return 作用:
1、返回数据给函数调用
2、结束函数
1、在返回值类型为void的函数中,可以使用return来提前结束函数
2、在同一个函数中可以有多个return 语句,但仅仅有一个return会被执行,因为只要执行return那么函数就返回了,后面的代码就都不会执行了
注意点:在C语言中没有函数重载概念,它区分函数仅仅是根据函数的名称,只要是要名称相同就是重复定义,无论形参是否不同
//返回值是int类型 (形式参数num1和num2) int sum(int num1,int num2) //这个sum函数是被调函数{ return num1 + num2; //返回和并且结束函数}int main(int argc, const char * argv[]) { //这个main函数就是主调函数 int a = sum(1, 2); //括号内的1和2是实际参数 有返回值就定义同类型的变量 printf("a = %d\n",a); return 0;}
4.函数的声明
函数声明:就是把函数头拷贝到调用它的前面加上“;”
作用:告诉编译器这个函数已经存在了
一个完成函数是包含2个部分一个就是函数声明,一个就是函数定义
如果一个函数没有写明它的返回值类型,那么它返回值类型默认是int
我们写代码的时候必须要带上返回值类型
无论是声明函数还是定义函数如果不写返回值类型那么默认都是int类型的
函数的声明与函数的定义务必要保持一致
int sum(int num1,int num2); //仅仅是sum的函数头加“;”int main(int argc, const char * argv[]) { int a = sum(1, 2); printf("a = %d\n",a); return 0;}int sum(int num1,int num2) //sum函数{ return num1 + num2;}
- C-015.函数的基本概念、定义、调用、返回值、参数和声明
- C语言:返回指针的函数,函数声明、定义和调用,嵌套调用
- 函数基础--函数的定义和调用,参数与返回值
- 函数定义,调用,参数,返回值
- 函数的声明、定义和调用
- javascript函数的声明、调用、传参和返回值
- shell函数的定义,返回值和参数
- C语言及程序设计提高例程-8 函数的声明、定义和调用
- 第4周 C语言及程序设计提高例程-8 函数的声明、定义和调用
- c语言函数的声明和调用
- javascript函数的声明和调用、有参函数和无参函数、有返回值
- JS函数的声明和调用,有参函数和无参函数,返回值
- js函数的基础应用:声明和调用、有参函数、无参函数、返回值
- 函数调用中参数和返回值的拷贝
- C语言的函数定义和函数声明
- 变量和函数的声明与定义(C/C++)
- 函数声明与函数定义的参数
- C++函数的参数传递、返回值及函数声明
- hello
- css transition动画效果案例
- 一个诡异的问题:Mac上Charles只能抓浏览器,抓app包失败的问题
- 华为USG负载分担及热备配置
- Ubuntu14.04 安装Qt5.2.1
- C-015.函数的基本概念、定义、调用、返回值、参数和声明
- Linux Top 命令解析 比较详细
- [R语言]字符串处理
- c# 获取桌面路径
- 干货:17个提升iOS开发效率的必备工具
- Git 常用命令详解(二)
- easyui combobox多选
- iptables ipset 实用命令
- 极光推送 桌面图标推送个数的处理