关于C语言stati c定义函数类型的具体解释
分类 C语言知识201 1-08-171 1 :34231人阅读评论(0)收藏举报内部函数和外部函数
函数一旦定义后就可被其它函数调用。 但当一个源程序由多个源文件组成时 在一个源文件中定义的函数能否被其它源文件中的函数调用呢?为此 语言又把函数分为两类
一、 内部函数stati c
如果在一个源文件中定义的函数只能被本文件中的函数调用而不能被同一源程序其它文件中的函数调用 这种函数称为内部函
数。定义内部函数的一般形式是 static 类型说明符 函数名(形参表) 例如static int f(int a, int b) 内部函数也称为静态函数。但此处静态static 的含义已不是指存储方式而是指对函数的调用范围只局限于本文件。 因此在不同的源文件中定义同名的静态函数不会引起混淆。
二、外部函数
外部函数在整个源程序中都有效其定义的一般形式为 extern 类型说明符 函数名(形参表) 例如extern int f(int a, int b)
如在函数定义中没有说明extern或static则隐含为extern。
在一个源文件的函数中调用其它源文件中定义的外部函数时应 用extern说明被调函数为外部函数。例如
F1 .C (源文件一)main()
{extern int f1(int i); /*外部函数说明表示f1函
数在其它源文件中*/
……
}
F2.C (源文件二)extern int f1(int i); /*外部函数定义*/
{
……
}
由于函数定义时默认为“exter n” 所以源文件一调用源文件二中定义的函数无论二中定义还是一中声明都可以省略exter n。但是用上e xtern并,使其意思表现更清晰说明此函数定义在别的源文件中。而头文件的作用之一就是起到了将众多函数声明综合到一起。
RAKsmart怎么样?RAKsmart是一家由华人运营的国外主机商,提供的产品包括独立服务器租用和VPS等,可选数据中心包括美国加州圣何塞、洛杉矶、中国香港、韩国、日本、荷兰等国家和地区数据中心(部分自营),支持使用PayPal、支付宝等付款方式,网站可选中文网页,提供中文客服支持。本月商家继续提供每日限量秒杀服务器月付30.62美元起,除了常规服务器外,商家美国/韩国/日本站群服务器、1-10...
DediPath 商家成立时间也不过三五年,商家提供的云服务器产品有包括KVM和OPENVZ架构的VPS主机。翻看前面的文章有几次提到这个商家其中机房还是比较多的。其实对于OPENVZ架构的VPS主机以前我们是遇到比较多,只不过这几年很多商家都陆续的全部用KVM和XEN架构替代。这次DediPath商家有基于OPENVZ架构提供低价的VPS主机。这次四折的促销活动不包括512MB内存方案。第一、D...
Friendhosting商家在前面的篇幅中也又陆续介绍到,是一家保加利亚主机商,主要提供销售VPS和独立服务器出租业务,数据中心分布在:荷兰、保加利亚、立陶宛、捷克、乌克兰和美国洛杉矶等。这不近期黑色星期五活动,商家也有推出了黑五优惠,VPS全场一次性45折,虚拟主机4折,全球多机房可选,老用户续费可获9折加送1个月使用时长,VDS折后最低仅€14.53/年,有需要的可以看看。Friendhos...