C语言中static关键字的作用
static用法: 在C中,static主要定义全局静态变量、定义局部静态变量、定义静态函数。 1、定义全局静态变量:在全局变量前面加上关键字static,该全局变量变成了全局静态变量。全局静态变量有以下特点。 a.在全局区分配内存。 b.如果没有初始化,其默认值为0. c.该变量在本文件内从定义开始到文件结束可见。 2、定义局部静态变量:在局部变量前面加上关键字static,其特点如下: a.该变量在全局数据区分配内存。 b.它始终驻留在全局数据区,直到程序运行结束。 c. 其作用域为局部作用域,当定义它的函数或语句块结束时,其作用域随之结束。 # include <stdio.h> void fn ( void ) { int n = 10 ; printf ( "n=%d\n" , n ) ; n ++ ; printf ( "n++=%d\n" , n ) ; } void fn_static ( void ) { static int n = 10 ; printf ( "static n=%d\n" , n ) ; n ++ ; printf ( "n++=%d\n" , n ) ; } int main ( void ) { fn ( ) ; printf ( "--------------------\n" ) ; fn_static ( ) ; printf (