【C语言学习笔记】:内部与外部函数

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
请按任意键继续. . .

猜你喜欢

转载自blog.csdn.net/Jiangziyadizi/article/details/129676739