static全局变量与普通的全局变量有什么区别?

static局部变量和普通局部变量有什么区别?static函数与普通函

在C语言中,关键字static有三个明显的作用:

1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中只会初始化一次。

2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。

3). 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-04
通俗点讲:
局部变量若加上static就表示该变量值在函数运行结束后是下一次函数运行时的初始值。
函数包括全局变量若加上static表示其作用范围只在本模块/本文件内可用。
第2个回答  2011-12-03
有static的变量、函数,只能被本文件访问到,别的文件加extern也白搭。
第3个回答  2011-12-03
在C语言中,关键字static有三个明显的作用:

1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中只会初始化一次。

2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。

3). 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。
在C语言中,关键字static有三个明显的作用:

1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中只会初始化一次。

2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。

3). 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。本回答被网友采纳
相似回答