c语言编程问题(作用域与存储类型 )

c语言编程问题(作用域与存储类型 )


繁星coding
浏览 602回答 3
3回答

慕工程0101907

fun.c1234567extern&nbsp;int&nbsp;factorial(int&nbsp;n){&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(n&nbsp;==&nbsp;1&nbsp;||&nbsp;n&nbsp;==&nbsp;0)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;1;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;n&nbsp;*&nbsp;factorial(n&nbsp;-&nbsp;1);}maincontent.c1234567891011121314151617#include&nbsp;<stdio.h>&nbsp;int&nbsp;factorial(int);&nbsp;int&nbsp;main(){&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;n,&nbsp;fact;&nbsp;&nbsp;&nbsp;&nbsp;printf("Please&nbsp;input&nbsp;an&nbsp;number:");&nbsp;&nbsp;&nbsp;&nbsp;scanf("%d",&nbsp;&n);&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(n&nbsp;<=&nbsp;0)&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("n&nbsp;must&nbsp;>&nbsp;0&nbsp;\n");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;1;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;printf("factorial(%d)&nbsp;=&nbsp;%d",&nbsp;n,&nbsp;factorial(n));&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;}&nbsp;

幕布斯6054654

局部静态(static)变量,作用域为局部,而生命周期是全程。静态局部变量属于静态存储方式,它具有以下特点:(1)静态局部变量在函数内定义,但不象自动变量那样,当调用时就存在,退出函数时就消失。静态局部变量始终存在着,也就是说它的生存期为整个源程序。(2)静态局部变量的生存期虽然为整个源程序,但是其作用域仍与自动变量相同,即只能在定义该变量的函数内使用该变量。退出该函数后, 尽管该变量还继续存在,但不能使用它。

PIPIONE

静态变量的生命周期是整个程序的生命周期。析构函数析构的是动态申请的内存。而类中的成员变量是在类的对象声明时创建,在对象生存期结束后截止。
打开App,查看更多内容
随时随地看视频慕课网APP