在线二区人妖系列_国产亚洲欧美日韩在线一区_国产一级婬片视频免费看_精品少妇一区二区三区在线

鍍金池/ 教程/ C/ 變量作用域
動(dòng)態(tài)內(nèi)存
類和對(duì)象
接口 (抽象類)
結(jié)構(gòu)體
循環(huán)的類型
函數(shù)
數(shù)字
日期和時(shí)間
基本語(yǔ)法
多態(tài)
數(shù)據(jù)抽象
注釋
命名空間
字符串
預(yù)處理器
決策語(yǔ)句
修飾符的類型
鍙橀噺綾誨瀷
基本輸入輸出
操作符
數(shù)組
模板
多線程
繼承
Web 編程
信號(hào)處理
指針
存儲(chǔ)類型
概述
引用
常量
異常處理
開(kāi)發(fā)環(huán)境
重載
變量作用域
數(shù)據(jù)類型
數(shù)據(jù)封裝
文件和流

變量作用域

變量作用域就是指變量在程序中能夠操作的區(qū)域,通常按照在程序中不同地方聲明可以分為如下三類:

  1. 局部變量:在函數(shù)中或者由花括號(hào)括起來(lái)的代碼塊中聲明。
  2. 形式變量:在函數(shù)的參數(shù)中聲明,也叫形參。
  3. 全局變量:在所有函數(shù)之外聲明的變量。

關(guān)于函數(shù)及函數(shù)參數(shù)的內(nèi)容我們會(huì)在后續(xù)章節(jié)中學(xué)習(xí)。這里我們首先學(xué)習(xí)關(guān)于局部變量和全部變量的相關(guān)內(nèi)容。

局部變量

在函數(shù)或代碼塊內(nèi)部聲明的變量稱為局部變量。他們?cè)诤瘮?shù)體內(nèi)聲明后僅能被其聲明的所在函數(shù)體內(nèi)部的后續(xù)語(yǔ)句操作。局部變量不能被函數(shù)外部訪問(wèn)到。下面就是使用局部變量的例子。

    #include <iostream>
    using namespace std;

    int main ()
    {
      // Local variable declaration:
      int a, b;
      int c;

      // actual initialization
      a = 10;
      b = 20;
      c = a + b;

      cout << c;

      return 0;
    }

全局變量

全局變量通常會(huì)被聲明定義在所有函數(shù)體的外面,大部分情況下是在程序的最上方定義。全部變量的生命周期就是進(jìn)程從開(kāi)始到程序執(zhí)行結(jié)束的整個(gè)過(guò)程。

全局變量可以被任何函數(shù)訪問(wèn)。也就是說(shuō),全局變量一旦被聲明,將在程序的整個(gè)生命周期內(nèi)都是有效的。下面是使用全局和局部變量的例子:

    #include <iostream>
    using namespace std;

    // Global variable declaration:
    int g;

    int main ()
    {
      // Local variable declaration:
      int a, b;

      // actual initialization
      a = 10;
      b = 20;
      g = a + b;

      cout << g;

      return 0;
    }

程序中的局部變量和全局變量可以有相同的變量名稱。但是在局部變量所在函數(shù)體內(nèi)如,使用變量名僅能訪問(wèn)到局部變量。比如:

    #include <iostream>
    using namespace std;

    // Global variable declaration:
    int g = 20;

    int main ()
    {
      // Local variable declaration:
      int g = 10;

      cout << g;

      return 0;
    }

上述例子中的程序被編譯并執(zhí)行后,將顯示如下結(jié)果:

    10

局部變量和全局變量的初始化

局部變量被定義后,默認(rèn)情況下,系統(tǒng)并不會(huì)對(duì)該變量進(jìn)行初始化,所以需要程序員進(jìn)行初始化操作。與之不同的是,全局變量定義后會(huì)被編譯系統(tǒng)自動(dòng)初始化,具體初始化的值如下:

數(shù)據(jù)類型 默認(rèn)初始化的值
int 0
char '\0'
float 0
double 0
pointer NULL

適如其分的給變量初始化是一個(gè)很好的編程習(xí)慣,否則,有時(shí)程序會(huì)出現(xiàn)很多意想不到的錯(cuò)誤。

上一篇:結(jié)構(gòu)體下一篇:Web 編程