C语言里的静态函数

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

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

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

在工程中,通常各个模块分开完成,这时候如果确定自己定义的函数别的文件不会使用,就可以加上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()未定义

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值