C语言函数
- 1、函数的三要素
- 1.1、函数定义
- 1.2、函数声明
- 1.3、函数调用
函数是C语言代码的基本组成部分,它是一个小的模块,整个程序由很多个功能独立的模块(函数)组成。这就是程序设计的基本分化方法。
之前接触过的函数:
main:C语言中所谓的主函数,主函数就是一种特别的函数。特别之处在于,一个C语言程序只能有且必须有一个main函数。C语言规定,一个C语言程序从主函数开始执行,到主函数执行完结束。
printf:函数的作用是用来在标准输出中打印信息。这个函数不是程序员自己写的,是C语言标准库提供的一个库函数。在C语言中写代码时可以引用库函数,但是必须使用#include引用这个库函数所在的头文件。
1、函数的三要素
#include <stdio.h>int add(int a,int b); //函数的声明,后面必须要有分号
int sub(int a,int b);//函数的声明
int multiply(int a,int b);//函数的声明
int divide(int a,int b);//函数的声明int main(void)
{int a, b, c;a = 233;b = 20;c = add(a , b);//a,b为int型的实际参数printf("c = %d\n",c);c = sub(a , b);printf("c = %d\n",c);c = multiply(a , b);printf("c = %d\n",c);c = divide(a , b);printf("c = %d\n",c);return 0;
}//函数的定义
int add(int a,int b)//a,b为int型的形式参数
{return a + b;
}
//函数的定义
int sub(int a,int b)
{return a - b;
}
//函数的定义
int multiply(int a,int b)
{return a * b;
}
//函数的定义
int divide(int a,int b)
{return a / b;
}
1.1、函数定义
函数定义是关键,是这个函数的实现。函数定义中包含了函数体,函数体中的代码段,决定了这个函数的功能。
格式:函数的返回值 函数名(函数的形式参数){函数的执行体return xx;}
1.2、函数声明
函数声明实际上是叫函数原型声明。什么叫原型?函数的原型包含三部分:函数名,返回值类型,函数参数列表。通俗讲,函数原型就是这个函数叫什么,接收什么类型的几个参数,返回一个什么样的返回值。函数声明的作用,在于告诉使用函数的人,这个函数使用时应该传递给他什么样的参数,它会返回什么样类型的返回值。这些东西都是写函数的人在函数定义中规定好的,如果使用函数的人不参照这个原型来使用,就会出错,结果就会和你想的不一样。
1.3、函数调用
函数调用就是使用函数名来调用函数完成功能。调用时必须参照原型给函数传参,然后从函数得到适当的返回值作为结果。
函数参数:
形参:形式参数的简称。在函数定义和函数声明中的参数列表中的参数,都是形参。
实参:实际参数的简称。函数调用中,实际传递的参数才是实参。
函数调用的过程:
其实就是实参传递给形参的一个过程。这个传递实际是一次拷贝。实际参数的时候,实参(本质是一个变量)本身并没有进入到函数内,而是把自己的值复制了一份传给了函数中的形参,在函数中参与运算。这种传参方法,就叫做传值调用。
返回值:(关键字return)
当函数执行完之后,会给调用该函数的地方返回一个值。这个值的类型就是函数声明中返回值类型,这个值就是函数体中最后一句return xxx;返回的那个值。(如果定义的函数是void型,则可以没有return)。
代码示例可以参考郝斌版C语言。