前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C语言 | 内部与外部函数

C语言 | 内部与外部函数

原创
作者头像
小林C语言
修改2021-04-20 10:20:17
1.4K0
修改2021-04-20 10:20:17
举报
文章被收录于专栏:C语言入门到精通

C语言函数的声明和定义

一个函数一般由两部分组成:

  • 声明部分执
  • 行语句

C语言对变量而言,声明与定义的关系稍微复杂一些,在声明部分出现的变量有两种情况:

  • 一种是需要建立存储空间的。
  • 另一种是不需要建立存储空间的。

前者称为定义性声明,简称定义;后者称为引用性声明。

一般为了叙述方便,把建立存储空间的声明称定义,而把不需要建立存储空间的声明称为声明。

在函数中出现的对变量的声明,除了用extern声明的以外都是定义,在函数中对其他函数的声明不是函数的定义。

C语言内部函数

一个函数只能被本文件中其他函数所调用,它称为内部函数。在定义内部函数时,在函数名和函数类型的前面加static即:

代码语言:javascript
复制
static 类型名 函数名(形参表);

内部函数又称为静态函数,因为它是用static声明的。

使用内部函数,可以使函数的作用域只局限于所在文件,在不同的文件中即使有同名的内部函数,也互不干扰。

通常把只能由本文件使用的函数和外部变量放在文件的开头,前面都加static使之局部化,表示其他文件不能引用。

C语言外部函数

在定义函数时,在函数首部的最左端加关键字extern,则此函数是外部函数,可供其他文件调用。

C语言规定,如果在定义函数时省略extern,则默认为外部函数。

C语言内部函数外部函数案例

代码语言:javascript
复制
#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;
}

编译运行结果:

代码语言:javascript
复制
11
10.000000

--------------------------------
Process exited after 0.07334 seconds with return value 0
请按任意键继续. . .

以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去的动力,跪谢各位父老乡亲啦~

C语言学习路线    C语言开发工具

VC6.0、Devc++、VS2019使用教程

100道C语言源码案例请去公众号:C语言入门到精通

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档