/*
Name:
Copyright:
Author:
Date: 31/07/17 13:35
Description:
【程序41】题目:学习static定义静态变量的用法
static有两种用法:面向过程程序设计中的static
面向对象程序设计中的static
这里的是:面向过程
静态全局变量:在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。
静态局部变量:在局部变量前,加上关键字static,该变量就被定义成为一个静态局部变量。
静态函数:在函数的返回类型前加上static关键字,函数即被定义为静态函数。
静态函数与普通函数不同,它只能在声明它的文件当中可见,不能被其它文件使用。
*/
#include <stdio.h>
void fun()
{
int var = 0;
static int static_var = 0; //静态局部变量
printf(" var equal %d\n",var);
printf(" static var equal %d\n",static_var);
printf("\n");
var++;
static_var++;
}
int main()
{
int i;
for(i = 0;i < 3;i++)
{
fun();
}
return 0;
}
运行结果:
结论:
不管运行多少次,在函数中普通变量的值不会影响下一次的运行结果,但静态局部变量会。