static void fun(void){ printf("hello from fun.\n");}int main(void){ fun(); fun1(); return 0;}/* file2.c */#include <stdio.h>static void fun1(void){ printf("hello from static fun1.\n");} 使用gcc file1.c file2.c编译时,错误报告如下: /tmp/cc2VMzGR.o:在函数‘main’中...
static int b = 0; // 定义一个static类型的全局变量b,初始值为0 void func(){static int c = 0; // 定义一个static类型的局部变量c,初始值为0 printf("b = %d, c = %d\n", b, c); // 打印b和c的值 b++; // b的值加1 c++; // c的值加1 }int main(){func(); // 调用func...
c语言中static、extern、void的重载 static: 1、在函数内部,表示该变量的值在各个调用间一直保持延续性; 2、在函数这一级,表示该函数只对本文件可见。 extern: 1、用于函数定义,表示全局可见(属于冗余的); 2、用于变量,表示它在其他地方定义。 void: 1、作为函数的返回类型,表示不返回任何值; 2、在指针声明中...
函数中静态变量aa 只初始化一次,每次访问的值应该是上一次调用到该函数时最后处理的结果, 三、static 函数 1. 概念: 在函数的返回类型前加上关键字static,函数就被定义成为静态函数。 函数的定义和声明默认情况下是extern的,但静态函数只是在声明他的文件当中可见,不能被其他文件所用。 static函数(也叫内部函数...
static void util_func(int value) { printf(“Value: %dn”, value); } int main() { util_func(10); // 可以在当前文件中调用util_func函数 return 0; } 总结:static关键字在C语言中的用法主要有静态变量和静态函数。静态变量用于维护变量的持久状态和限制作用域,静态函数用于限制函数的...
int main(void) { fun(); fun1(); return 0; } /* file2.c */ #include <stdio.h> static void fun1(void) { printf("hello from static fun1.\n"); } 使用gcc file1.c file2.c编译时,错误报告如下: /tmp/cc2VMzGR.o:在函数‘main’中: ...
static int i; //只在a文件中用int j; //在工程里用static void init() //只在a文件中用{ } void callme() //在工程中用{ static intsum; } 上面的全局i变量和init()函数只能用在a.c文件中,全局变量sum的作用域只在callme里。变量j和函数callme()的全局限扩充到整个工程文件。所以可以在下面的...
int main(void) { extern char a; // extern variable must be declared before use printf("%c ", a); (void)msg(); return 0; } 程序的运行结果是: A Hello 你可能会问:为什么在 a.c 中定义的全局变量 a 和函数 msg 能在 main.c 中使用?前面说过,所有未加 static 前缀的全局变量和函数都具...
c语言中static、extern、void的重载 static: 1、在函数内部,表示该变量的值在各个调用间一直保持延续性; 2、在函数这一级,表示该函数只对本文件可见。 extern: 1、用于函数定义,表示全局可见(属于冗余的); 2、用于变量,表示它在其他地方定义。 void: 1、作为函数的返回类型,表示不返回任何值;...
定义一个静态函数就是在函数的返回类型前加上static关键字。一般函数的定义和声明默认情况下是extern的,但是静态函数只是在声明它的模块中可见,不能被其它模块调用。定义一个静态函数如下: static void function(void) { //函数体 } 1. 2. 3. 4.