C语言里的静态函数

来源:互联网 发布:食品淘宝怎么上传 编辑:程序博客网 时间:2024/06/05 07:17

静态变量我们和熟悉,是定义在静态存储区的数据,每次修改后可以保持数值的不变

但是定义静态函数的作用是什么呢?

定义了静态函数后,外部文件无法使用该函数了,同样的是定义静态变量后,外部文件同样不能使用

在工程中,通常各个模块分开完成,这时候如果确定自己定义的函数别的文件不会使用,就可以加上static,

以保证不会被误用

例如:

file1.c

 

#include<stdio.h>

static int a=1;   //a can not used in file2.c too ,static can only use in this file

void fun1()
{
 printf("I am in fun1!/n");
}

static void fun2()
{
 printf("I am in static fun2!/n");
}

 

file2.c


extern void fun1();
//extern void fun2();

//extern int a;

main()
{
 fun1();

// printf("a=%d",a);
// fun2();
}
如果使用了fun2()时候,编译时候会报告fun2()未定义

原创粉丝点击