Static是什么意思啊,在C程序里面

Static是什么意思啊,在C程序里面,第1张

编辑本段C中的static函数

分类

static

函数内部函数和外部函数

当一个源程序由多个源文件组成时,C语言根据函数能否被其它源文件中的函数调用,将函数枣顷分为内部函数和外部函数。

内部函数

(又称静态函数)

如果在一个源文件中定义的函数,只能被本文件中的函数调用,而不能被同一程序其它文件中的函数调用,这种函数称为内部函数。

定搭陪义一个内部函数,只需在函数类型前再加一个“static”关键字即可,如下所示:

static

函数类型

函数名(函数参数表)

{……}

关键字“static”,译成中文就是“静态的”,所以内部函数又称静态函数。但此处“static”的含义不是指存储方式,而是指对函数的作用域仅局限于本文件。

使用内部函数的好处是:不同的人编写不同的函数时,不用担心自己定义的函数,是否会与其它文件中的函数同名,因为同名也没有关系。

外部函数

外部函数的定义:在定义函数时,如果没有加关键字“static”,或冠以关键字“extern”,表示此函数是外部函数:

[extern]

函数类型

函数名(函数参数表)

{……}

调用外部函数时,需要对其进行说明:

[extern]

函数类型

函数名(参数类型表)[,函数名2(参数类型表2)……];

[案例]外部凳枝陆函数应用。

(1)文件mainf.c

main()

{

extern

void

input(…),process(…),output(…)

input(…)

process(…)

output(…)

}

(2)文件subf1.c

……

extern

void

input(……)

/*定义外部函数*/

{……}

(3)文件subf2.c

……

extern

void

process(……)

/*定义外部

函数*/

{……}

(4)文件subf3.c

……

extern

void

output(……)

/*定义外部函数*/

{……}

您好,你的问题,我之前好像也遇到过,以下是我原来的解决思路和方法,希望能帮助到你,若有错误,还望见谅!展开全部

static 用来说明静态变量

1、如果是在函数外面定义的,那么其效悔桐果和全局变量类似,即static说明的变量可以在当前c程序文件中使用。

2、如果是在函数内部定义的,那么这个变量只初始化一次,即使再次调用这个函数,这个static变量也不会再次被初始化,于是,这个变量的取值就会一直保存着,我们再次调用该函数时,仍是保存的上一次函数调用时保存的结果。

扩展资料:

c语言中的static有三个主要作用:

1、隐藏性。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。

2、static可以保持变量内容的持久,当static定义变量在函数内部时,改变量值的生命周期和全局变量相同。非码芦常感谢您的耐心观看,如有帮助请采纳,祝迟前带生活愉快!谢谢!


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12314152.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存