位置:首页 > 软件操作教程 > 编程开发 > C语言 > 问题详情

在C语言中,用static声明局部变量

提问人:杨紫红发布时间:2020-11-16
函数中变量的值在函数调用结束后不消失而保留原值,在下次该函数调用时,该变量已有值,即为上一次函数调用结束时的值。该局部变量为静态局部变量。
说明:
1、静态局部变量属于静态存储类别,在静态存储区内分配存储单元。在程序整个运行期都不释放。自动变量属于动态存储类别,占动态存储区空间,函数调用结束后即释放。
2、对静态局部变量在编译时赋初值,程序运行时,它已有初值,以后每次调用函数时不再重新赋初值而只是保留上次函数调用结束时的值。对自动变量赋初值,不是在编译时进行的,而是在函数调用时进行,每调用一次函数重新给一次初值。
3、对静态局部变量来说,如不赋初值,编译时自动赋初值0或空字符。
   对自动变量来说,如不赋初值,它的值是一个不确定的值。
4、虽然静态局部变量在函数调用结束后仍然存在,但其他函数不能引用。

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部