C语言函数的声明和定义
一个函数一般由两部分组成:
-
声明部分执
-
行语句
C语言对变量而言,声明与定义的关系稍微复杂一些,在声明部分出现的变量有两种情况:
-
一种是需要建立存储空间的。
-
另一种是不需要建立存储空间的。
前者称为定义性声明,简称定义;后者称为引用性声明。
一般为了叙述方便,把建立存储空间的声明称定义,而把不需要建立存储空间的声明称为声明。
在函数中出现的对变量的声明,除了用extern声明的以外都是定义,在函数中对其他函数的声明不是函数的定义。
C语言内部函数
一个函数只能被本文件中其他函数所调用,它称为内部函数。在定义内部函数时,在函数名和函数类型的前面加static即:
static 类型名 函数名(形参表);
内部函数又称为静态函数,因为它是用static声明的。
使用内部函数,可以使函数的作用域只局限于所在文件,在不同的文件中即使有同名的内部函数,也互不干扰。
通常把只能由本文件使用的函数和外部变量放在文件的开头,前面都加static使之局部化,表示其他文件不能引用。
C语言外部函数
在定义函数时,在函数首部的最左端加关键字extern,则此函数是外部函数,可供其他文件调用。
C语言规定,如果在定义函数时省略extern,则默认为外部函数。
C语言
内部函数外部函数案例
#include<stdio.h>
extern int maxNumber(int num1,int num2)//外部函数
{
int max;
max=num1>num2?num1:num2;
return max;
}
static float minNumber(float num1,float num2)//内部函数
{
float min;
min=num1<num2?num1:num2;
return min;
}
int main()
{
printf(“%d\n”,maxNumber(10,11));
printf(“%f\n”,minNumber(10,11));
return 0;
}
编译运行结果:
11
10.000000
——————————–
Process exited after 0.07334 seconds with return value 0
请按任意键继续. . .