您的位置:首页 > 编程语言 > C语言/C++

C语言学习笔记----------伊能C语言学习笔记-------静态局部变量

2015-12-27 11:02 477 查看
/*

用static声明一个变量的作用是:

1.对局部变量用static声明,把它分配在静态存储区,该变量在整个程序执行期间不释放,其所分配的空间始终存在。常使用静态局部变量在函数调用间歇保存某些变量的值。

2.对全局变量用static声明,则该变量的作用域只限于本文件模块(即被声明的文件中)

*/

#include<stdio.h>

#include<stdlib.h>

void go()

{

for (int i = 0; i < 10; i++)

{

int num = 0; //局部变量,每次块语句结束,就自动回收,然后重新分配

//每次的值都为0

static int data = 0; //静态局部变量,,始终在内存,一旦定义初始化,即使再次执行初始化的语句,也仅仅只执行一次初始化。

// 生命周期一直沾着内存,与程序共存亡。

printf("%p,%p\n", &num, &data); //输出地址

num += i; //num=num +i;

data = data + i;

printf("\n");

}

//下面我们就来看一下,num和data的生命周期有什么特点呢?

}

void main()

{

go();

system("pause");

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: