在C语言中static有什么含义

谢谢,好像不止一个意思吧~~~... 谢谢,好像不止一个意思吧~~~ 展开
 我来答
义昀欣ek
推荐于2019-08-29 · TA获得超过3298个赞
知道小有建树答主
回答量:6776
采纳率:0%
帮助的人:2175万
展开全部
是不止一个意思,要看用到哪里。比如:
static int a;
int b;
void func(void)
{
static int c;
int d;
}
在这里,a与b都是全局变量,二者的区别是,b可以被别的文件使用,a只能在本文件中使用,这是static对全局变量的作用。
c和d的区别是,d是一个自动变量,func函数执行完后,d会自动被释放。但c却不会被释放,下一次调用func函数时,c的值会保留上次的值继续使用。
育知同创教育
2018-06-26 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
最主要有两点用途。
让一个变量长期有效,而不管其是在什么地方被申明。比如:
int fun1()
{
static int s_value = 0;
....
}
那么fun1不管在什么地方被调用,当函数退出后,s_value最后的值将一直会被系统保存(相当于一个全局变量),下次s_value再被用到时,也即当fun1()再次被调用时,s_value初始值将是最近被保存过的值(请注意s_value初始化操作只会被执行一次,即上述s_value =0 这个语句)。

2.避免多个文件使用了相同的变量名而导致冲突
 比如有多个文件,分别由几个人独立开发的。假定他们在各自的文件中定义相同的“全局”变量名(仅仅指在他们独自的文件中全局),当系统集成时,由于他们使用了名字一样的“全局”变量,导致有难于遇见的问题。解决这个问题方便的做法就是在各自文件中,在相同的全局变量申明前加上static修饰符。这样系统就会为他们分配不同的内存,互不影响了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
日月晨云
2019-12-23 · 来自新疆的我,带您体验丝路传奇
日月晨云
采纳数:1121 获赞数:5108

向TA提问 私信TA
展开全部
“是不止一个意思,要看用到哪里。比如: static int a; int b; void func(void) { static int c; int d; } 在这里,a与b都是全局变量,二者的区别是,b可以被别的文件使用,a只能在本文件中使用,这是static对全局变量的作用。 c...”
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kejiazhw
2011-03-15 · TA获得超过807个赞
知道小有建树答主
回答量:230
采纳率:0%
帮助的人:241万
展开全部
就一个意思.static修饰的变量是静态变量,在整个程序的执行时间里面,该变量只初使化一次,直至程序退出执行。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ryu1000
2011-03-15 · TA获得超过217个赞
知道小有建树答主
回答量:427
采纳率:0%
帮助的人:280万
展开全部
静态变量,没什么其他意思,就是声明一次后,出函数该变量不会被释放掉
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式