这个里面的static关键字很容易理解,大致是以下一些东西。
1,不初始化时自动初始化为0
2,程序调用时只分配一次内存,并且会保留上次的结果
举两个很简单的程序例子:
#include <iostream>
#include <string>
using namespace std;
static int a;
void main(){
cout<<a;
}
// 结果是 a = 0,a被初始化为0了1
第二个:
#include <stdio.h>
int fun(void){
static int count = 10; // 事实上此赋值语句从来没有执行过
return count--;
}
int count = 1;
int main(void) {
printf("global\t\tlocal static\n");
for(; count <= 10; ++count)
printf("%d\t\t%d\n", count, fun());
return 0; }
结果:
count被调用之后被保存了
大致就是以上两种用法,想知道更多功能,请参考我转载的那篇文章