美文网首页
小朋友学C语言(30):局部变量和全局变量

小朋友学C语言(30):局部变量和全局变量

作者: 海天一树X | 来源:发表于2018-03-27 12:19 被阅读0次

    (一)局部变量

    在某个函数或块的内部声明的变量称为局部变量。它们只能被该函数或该代码块内部的语句使用。局部变量在函数外部是不可知的。下面是使用局部变量的实例。在这里,所有的变量 a、b 和 c 是 main() 函数的局部变量。
    例1:

    #include <stdio.h>
     
    int main ()
    {
      /* 局部变量声明 */
      int a, b;
      int c;
     
      /* 实际初始化 */
      a = 5;
      b = 10;
      c = a + b;
     
      printf ("a = %d, b = %d and c = %d\n", a, b, c);
     
      return 0;
    }
    

    运行结果:

    a = 5, b = 10 and c = 15
    

    (二)全局变量

    全局变量是定义在函数外部,通常是在程序的顶部。全局变量在整个程序生命周期内都是有效的,在任意的函数内部能访问全局变量。
    全局变量可以被任何函数访问。也就是说,全局变量在声明后整个程序中都是可用的。
    例2:

    #include <stdio.h>
     
    /* 全局变量声明 */
    int g;
     
    int main ()
    {
      /* 局部变量声明 */
      int a, b;
     
      /* 实际初始化 */
      a = 5;
      b = 10;
      g = a + b;
     
      printf ("a = %d, b = %d and g = %d\n", a, b, g);
     
      return 0;
    }
    

    运行结果:

    a = 5, b = 10 and g = 15
    

    (三)局部变量覆盖全局变量

    在程序中,局部变量和全局变量的名称可以相同,但是在函数内,局部变量的值会覆盖全局变量的值。
    例3:

    #include <stdio.h>
     
    /* 全局变量声明 */
    int g = 50;
     
    int main ()
    {
        printf ("g = %d\n",  g);
        printf("内存地址:%p\n", &g);
      
        /* 局部变量声明并初始化 */
        int g = 8;
     
        printf ("g = %d\n",  g);
        printf("内存地址:%p", &g);
     
        return 0;
    }
    

    运行结果:

    g = 50
    内存地址:0x601040
    g = 8
    内存地址:0x7ffcc207febc
    

    想了解小朋友学编程可加QQ 307591841 或微信 307591841

    关注微信公众号请扫二维码 qrcode_for_kidscode_258.jpg

    相关文章

      网友评论

          本文标题:小朋友学C语言(30):局部变量和全局变量

          本文链接:https://www.haomeiwen.com/subject/awwjcftx.html