{
int a,b,c;
scanf("%d,%d",&a,&b); c=max(a,b); printf("Max is %d",c); } int max(int x, int y){
int z;
z=x>y?x:y; return(z);}
程序1
#include <stdio.h>
void increment(void); void main() { increment(); increment(); increment(); } void increment(void) {
int x=0; x++; printf(“%d\n”,x); }
程序2
#include <stdio.h> void main() {
void increment(void); increment(); increment(); increment(); } void increment(void) {
static int x=0; x++; printf(“%d\n”,x); }
程序1输出结果为:1
1
1
程序2输出结果为:1
2
3
函数中的局部变量的值在函数调用结束后不消失而保留原值,以便下一次调用该函数时可以使用上一次调用的最后结果。
这时就应该指定该外部变量(即全局变量)是在函数的外部定义的,它的作用域为从变量的定义处开始,到本程序文件的末尾。在此作用域内,全局变量可以为程序中各个函数所引用。局部变量为“静态局部变量”。