本文目录一览:
C语言:各函数内部定义的静态局部变量可否同名
可以。静态变量一旦被定义,内存中分配给该变量的空间不会被释放,直到掉电。但这和变量名相同与否是两个概念,变量名只是内存空间的一个名称或者指示指针而已。如果两个同名的静态变量在两个不同的函数内部被定义,内存分配时地址指针并不同,所有不会冲突。函数内部定义的静态变量在应用时需要注意一个问题:如果该功能函数被两个独立的对象同时调用,该静态变量是冲突的,此时该静态变量必须被定义为独立对象的成员。
C 语言中函数定义时前面加static是什么意思
表示是静态函数
只能在本文件调用
不能在同工程中,其它C文件调用
使用static 可以避免不想被其它模块调用的函数调用
同时, 不同文件中的static函数可以重名
减少命名难度。
c语言static关键字的作用
基本用法有两个:static在文件域内可以允许全局变量仅在文件内有效,避免全局变量重名。在函数作用域内,static可以使变量不会随函数结束而被销毁,相当于函数内的全局变量。