static

Stacey的专栏 2016-09-16 08:50:41
关于静态变量

static int a = 3;

int main()
{
static int b = 2;
return 0;
}

静态变量是函数启动时就分 配了变量的内存,而等到执行到程序中该语句时候才第一次赋值,还是编译时候就已经确定了变量的值呢?
...全文
84 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
paschen 2016-09-17
  • 打赏
  • 举报
回复
引用 4 楼 Stacey的专栏的回复:
所以如果变量b在一个子函数里,b会比子函数里的其他普通变量更早的就存在了,在编译时就存在了,对吗?
对,这一点和全局变量一样
Stacey的专栏 2016-09-17
  • 打赏
  • 举报
回复
所以如果变量b在一个子函数里,b会比子函数里的其他普通变量更早的就存在了,在编译时就存在了,对吗?
paschen 2016-09-17
  • 打赏
  • 举报
回复
编译时就确定了,之后函数中每次运行不会为b赋值2
paschen 2016-09-17
  • 打赏
  • 举报
回复
静态变量是在程序运行时就存在了,而不是函数启动时
wang0635 2016-09-16
  • 打赏
  • 举报
回复
编译时就确定了值 执行前、程序装入内存时,变量的值也存入了

69,335

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧