您的位置:首页 > 其它

static静态变量(静态全局和静态局部)

2016-05-27 09:39 155 查看
static int a=1;
void fun1(void){    a=2;  }
void fun2(void){    int a=3;  }
void fun3(void){   static int a=4;  }
int main(int argc,char** args){
printf(“%d”,a);
fun1( );
printf(“%d”,a);
fun2( );
printf(“%d”,a);
fun3( );
printf(“%d”,a);
}


运行结果是:1 2 2 2

fun3中定义的a虽然是静态的,但是是局部静态的,只在fun3这个函数中可见,并一直存在(值初始化一次)

即:静态局部变量只对定义它的函数体始终可见,函数体执行完过后虽然还存在,但是无法被其他的使用了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: