c语言中关于static的用法,笔试中常见的题目

来源:互联网 发布:python datetime now 编辑:程序博客网 时间:2024/04/30 03:54

1. 变量在函数体内前面加上static 关键字,在这一函数被调用过程中维持其值不变。

例val:

    int function()    {        static int val = 3;        ...            return 0;     }

  

2. 声明为在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量,例如下面,a只能在file1中使用,而不能在file2中使用.

例:

/***file1***/static int a = 3;int fun1(){     ......}int fun2(){    ......}/**file2***/int fun3(){    ......}
3.在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。如下面fun1只能被file1中的函数调用,而不能被file2中的函数调用.
/***file1***/static int fun1(){     ......}int fun2(){    ......}/**file2***/int fun3(){    ......}


不足之处,请大家多多指教!