09_关于变量

 静态变量

 一、静态变量      

  static关键字

  static int i;

二、静态变量的运用

 1、计算函数被调用次数

 2、返回指针

 int* square3(int *x)
 {
    int a=*x * *x;
    return &a; //危险 用自动变量
 }

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
 void test()
 {
    static int i=1;//只有第一次会赋初值
    printf("%d
",i++);
 }
 int* square3(int *x)
 {
     static int a=0;
     a=*x * *x;
     return &a; //是静态变量无危险
 }
 main(void)
{   
   
   
 //test();
 //test();
 //test();
    int a=3;
    int *pa=square3(&a);
    test();
    printf("%d
", *pa);
    getchar();
    getchar();
    return 0;
}
View Code

全局变量

一、全局变量

 声明

    全局变量的定义和一般变量定义相同,不同的就是它的位置。一般会放在所有共享函数的前边。

 作用

    在函数间共享数据。

二、全局变量的运用

 

 

三、作业:

写出代码运行结果:

#include <stdio.h>
#include <stdlib.h>

int i=11;  //0 int i=0;全局变量

void a()

{       //int i=111;

         printf("%d
",i) ;

         i++;  

}

 

void b()

{ static i=12;

         printf("%d
",i) ;

         i++;

}

void c()

{

         printf("%d
",i) ;

         i++;

}    

 

int main()

{

a();c(); b();

getchar();

return 1;

}
View Code
11
12
12
View Code

   

原文地址:https://www.cnblogs.com/sd-xyy/p/12913409.html