zoukankan      html  css  js  c++  java
  • 局部变量和全局变量的区别

    背景:上午看书阅及这两对概念,有很多相似之处,故记之。

    一. 局部变量&全局变量

      1 局部变量:“在函数内定义的变量”,

          即在一个函数内部定义的变量,只在本函数范围内有效

      2 全局变量:“在函数外定义的变量”,

          即从定义变量的位置到本源文件结束都有效。  

          目的:增加函数间数据联系的渠道。由于同一文件中的所有函数都能引用全局变量的值,因此如果在一个函数中改变了全局变量的值,

             就能影响到其他函数中全局变量的值,相当于各个函数之间有直接的传递渠道。

     为了便于区别两者,C程序设计人员有一个习惯,将全局变量名的第一个字母用大写表示。如:float Max=0,Min=0;  //定义全局变量Max,Min

    二. 内部函数&外部函数

      1.内部函数只被本文件中其他函数所调用。

            定义内部函数时,在函数名、函数类型前加 static 。 static 类型名 函数名(形参表); 例如,static int fun(int a,int b);

      2.外部函数:可供其他文件调用。

            定义外部函数时,在函数首部左端加 extern。extern int fun(int a,int b);

            若在定义函数时省略extern,则默认为外部函数。

    拓展一个问题,为什么C语言要求在定义所有的变量时都要指定变量的类型?

            所谓类型,就是对数据分配存储单元的安排,包括存储单元的长度(占多少字节)以及数据的存储形式。不同的类型分配不同的长度和存储形式。

          在计算机中,数据是存放在存储单元中的,它是具体存在的(在数学中,数和数的运算都是抽象的)。而且,存储单元是由有限的字节构成的,

          每一个存储单元中存放数据的范围是有限的,不可能存放“无穷大”的数,也不能存放循环小数。

    最后附上c语言包含的数据类型

          

    END 谢谢!

  • 相关阅读:
    MFC常见问题解惑
    VS2010之MFC串口通信的编写教程
    Visual C++ 开发心得与调试技巧
    WIN32 DLL中使用MFC
    c++ 类模版、成员函数模版、函数模版 用法
    【学术篇】浅谈各种邻接表
    【模板篇】树状数组们(四)
    【学术篇】网络流24题--飞行员配对方案问题
    【学术篇】网络流24题--骑士共存问题
    【模板篇】树状数组们(三)
  • 原文地址:https://www.cnblogs.com/gaigaichen/p/6860961.html
Copyright © 2011-2022 走看看