关于“php_函数静态变量”的问题,小编就整理了【4】个相关介绍“php_函数静态变量”的解答:
什么是静态变量和配置变量?静态变量 类型说明符是static。静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在静态存储区内分配存储单元),该区域中的数据在整个程序的运行期间一直占用这些存储空间(在程序整个运行期间都不释放),也可以认为是其内存地址不变,直到整个程序运行结束(相反,而auto自动变量,即动态局部变量,属于动态存储类别,占动态存储空间,函数调用结束后即释放)。
静态变量虽在程序的整个执行过程中始终存在,但是在它作用域之外不能使用。
静态变量static的作用是什么?作用:有时希望函数中的局部变量的值在函数调用结束后不消失而继续保留原值,即其占用的存储单元不释放,在下一次再调用该函数时,该变量已有值(就是上一次函数调用结束时的值)。
下边简单介绍一下:
static关键字在C语言中用于声明一个静态的局部变量。
这时就应该指定该局部变量为“静态局部变量”,用关键字static进行声明。用静态存储要多占内存(长期占用不释放,而不能像动态存储那样一个存储单元可以先后为多个变量使用,节约内存),而且降低了程序的可读性,因此若非必要,不要多用静态局部变量。
希望我的回答对你有所帮助。
静态变量和局部变量的区别?
局部变量:
1.局部变量定义在局部范围内:如方法,函数,语句中,只在作用域有效
2.局部变量没有默认初始化值
3.局部变量存在于栈内存中,作用的范围结束,变量空间会自动释放
静态变量:
用static关键字修饰的变量,被所有对象所共享
静态变量通过什么调用?c语言中静态变量作常量使用,用于存储常数。可用const,constant或final等关键字标识,其值就会在编译时设定,并且无法在运行时改变。
编译器通常将静态常量与文本一起置于目标文件的文本区域,而非常量初始化数据则置于数据区;而如若有需要,有些编译器还可选择为其开辟专用区。
对于静态全局变量来说,针对某一源文件的以static声明的文件级变量与函数的作用域只限于文件内(只在文件内可见),也即“内部连接”,因而可以用来限定变量的作用域。
到此,以上就是小编对于“php_函数静态变量”的问题就介绍到这了,希望介绍关于“php_函数静态变量”的【4】点解答对大家有用。