问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c语言:static问题

发布网友 发布时间:2022-04-23 03:43

我来回答

5个回答

热心网友 时间:2023-09-09 14:49

一、静态全局变量
全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量是静态存储方式, 静态全局变量也是静态存储方式。 这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域是整个源程序, 当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。 而静态全局变量则*了其作用域, 即只在定义该变量的源文件内有效, 在同一源程序的其它源文件中不能使用它。由于静态全局变量的作用域局限于一个源文件内,只能为该源文件内的函数公用, 因此可以避免在其它源文件中引起错误。

二、静态局部变量
static声明的局部变量在调用结束后不消失而保留原值,即其占用存储但愿不释放,在下一次该函数调用时,该变量保留上一次函数调用结束时的值。
只被初始化一次且只能在局部使用。

float func1()
{
static float a = 0;
return a++;
}
float func2()
{
float a = 0;
return a++;
}
int main()
{
for( int i = 0; i < 10; i++ )
cout<< func1() << endl;
for( int j = 0; j < 10; j++ )
cout<< func2() << endl;
return 0;
}
打印结果:func1: 0 1 2 3 4 5 6 7 8 9
func2: 0 0 0 0 0 0 0 0 0 0
且 a只能在func()函数中使用。

热心网友 时间:2023-09-09 14:49

static变量最大的作用范围是一个文件,也就是你所说的可防其他文件调用,而你说的局部变量,无论是不是static ,都是只在他的作用域里有效,即模块内有效,虽然他的生存周期是从程序的开始到结束,但其他地方是访问不到的,而全局static变量,整个文件内部所有的代码都是可以访问的到的。定义局部或全局变量就是这一点不同而已。
如果有明白的请补充说明!

热心网友 时间:2023-09-09 14:50

大括号可以将代码分段去处理,第一个
{static
int
a=2;}大括号将a做为这个区域的一个局域变量,超出这个区域的a是无效的,故 printf("%d\n",a)的a变量是全局变量;
{static
int
a=2;
printf("%d\n",a);}这个括号将printf("%d\n",a)包含进去,所以打印的是该区域的变量a=2,
最后一个在同个代码块中是不允许定义相同的变量的,故出错~

热心网友 时间:2023-09-09 14:51

两种,全局变量和静态类型变量
,static,即在程序运行的过程中静态变量始终是占用一个存储空间。
静态变量只能在他的作用范围内使用,使用局部静态变量是为了在下次调用该函数时,能使用上次调用后得到的该变量的值。
(1)定义格式:
static
数据类型
内部变量表;
(2)存储特点
1)静态内部变量属于静态存储。在程序执行过程中,即使所在函数调用结束也不释放。换句话说,在程序执行期间,静态内部变量始终存在,但
其它函数是不能引用它们的。
2)定义但不初始化,则自动赋以"0"(整型和实型)或'\0'(字符型);且每次调用它们所在的函数时,不再重新赋初值,只是保留上次调用
结束时的值!
(3)何时使用静态内部变量
1)需要保留函数上一次调用结束时的值。
2)变量只被引用而不改变其值。

热心网友 时间:2023-09-09 14:51


A
声明为static将把变量存储在静态存储区(全局变量也存储在静态存储区)
B)
全局变量说明为static存储类,其作用域将被缩小到所在的文件
C)
静态变量,全局变量,还有整型数组在未赋初值时期初值为0
D)
二者还是有差别的
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
橙子冷藏能保存多久 橙子会过期吗 新鲜橙子如何保存更久 橙子保鲜剂对人体有害吗 粒上皇开口熟栗120g*5袋(共600g)-详细介绍 三皇王板栗介绍 品牌榜:2024年板栗十大品牌排行榜 投票结果公布【新】 为什么来大姨妈胸会胀 少儿学什么舞蹈 青年学什么舞蹈好 求本穿越小说 女主穿越前是大学生也是女扮男装是因为家族的关系 后来 C语言里面静态变量static是什么作用啊? 求大量女变男gl小说。 谢谢。 static在C和C++里各代表什么含义 女主穿越到废柴身上,然后逆袭的女强玄幻小说 微信一个手机号注册了两个怎么切换账号啊? c语言中static关键字有哪些? c语言中static关键字有哪些? 现代女强邪魅女扮男装np 微信切换账号怎么返回原来? 请问女扮男装的小说有哪些? C语言中static函数的具体作用是什么? 求好看的gl穿越古风小说,要女变男的,喜欢女的,推荐也行 c语言中的static是什么 c语言中的static是什么 为什么微信重新登录以后就成另一个账号了? c语言中static 到底有啥作用啊? 微信两个帐号切换,切换时其中一个要输入密码,另一个不用,怎么回事? C语言编程中“static”是什么意思? 就是微信,我点击了切换账号,可是那个账号没有登录,怎么可以再切换到另一个账号呢? c语言:static问题 《女扮男装惑冷王》txt全集下载 C语言中static变量的赋值问题 C语言中static变量的赋值问题 小女花不弃莫若菲是女扮男装吗? 谁有女强文,np,女扮男装,女主腹黑、爱情小白、穿越杀手。类似《傲风》《恶魔很倾城》可以连载,更快 爆难难字谜(要有答案) 求几部好看的穿越小说,要女主女扮男装的比较淡薄的那种。呵呵 大家帮个忙推荐些吧... 有什么类似烈焰战神,傲风等穿越到异世界的小说,要女扮男装,非小白,女主腹黑,与神兽契约的小说 要女强男更强,过程一对一,结局更要一对一。是玄幻或穿越的宠文哦。有着请发个我。 求与翦羽的《妖娆召唤师》类似的女主玄幻文,一对一,谢绝后宫 2250992516@qq.com。谢谢 宽带解决烂橘子下载速度慢的方法 烂橘子下载速度慢到家了 origin客户端下载游戏太慢,上次还正常的,怎么办 橘子上战地3下载99%,差40mb,下载速度一直为0了,怎么办 - 信息提示 橘子下载游戏超慢有没有解决的方法,急!谢谢大神 儿童外伤眼睛前房积血 外伤性前房积血,房角后退,睫状体带变宽,有什么建议 半个月前。眼睛因外伤导致於血与肿块压住了视觉神经,现在看不见,请问能治好吗?