C中的静态函数和变量

时间:2012-10-27 01:33:53

标签: c function variables static

我知道在面向对象语言中使用静态变量的目的是什么,但是,我不明白在C中使用“static”关键字的含义是什么。 有人可以向我解释一下吗?

2 个答案:

答案 0 :(得分:7)

在函数或全局变量上,static使函数或全局变量成为该文件的本地变量;其他文件无法通过该名称访问该函数或全局变量(但如果您指定它,它们可以访问它)。

在一个局部变量上,它使它看起来好像是一个全局变量,但只能在该函数中访问(除非再次给出指向它的指针)。

答案 1 :(得分:1)

静态变量在离开函数时所具有的值与下次调用函数时变量的值相同。

静态功能只能在函数出现的同一文件中调用。