嵌套代碼

嵌套代碼

位於花括弧內的語句集稱為代碼塊或複合語句。注意,包括main在內的所有函式都使用複合語句。代碼塊具有自己的聲明語句和其他語句。一個代碼塊又位於某個函式體或另一個代碼塊中,這樣創建的代碼塊被稱為嵌套代碼塊。

基本介紹

  • 中文名:嵌套代碼
  • 外文名:Wrap with Abbreviation
  • 定義:一個代碼塊又位於另一個代碼塊中
  • 類型:數據
  • 系統:計算機
  • 套用學科:計算機原理
概述,作用域,作用域的規則,使用規則,

概述

當運行該程式時,c的值為10,而不是30。語句“b=a”把a的值20(而不是0)賦給b。儘管a的作用域到main的末尾,但由於內部代碼塊又聲明了變數a,因此在內部代碼塊中是不可見的。但是,當離開內部代碼塊時,內部的a它不在其作用域之內,外部的a又變為可見的了。
嵌套代碼
記住,變數b在內部代碼塊中沒有重新聲明,因此它對這兩個代碼塊都是可見的。這就是為什麼當計算下面的語句時:
int c = a + b;
a的值為0,而b的值為10。
main函式的變數對內部代碼塊是可見的,反過來則不對。

作用域

作用域的規則

作用域:指的是變數可用的程式區間。
可見性:程式可以從記憶體訪問變數的能力。
生存期:程式運行時,變數存在的時間。

使用規則

1)全局變數的作用域是整個程式檔案
2)局部變數的作用域是從該變數的聲明位置開始,直到聲明它的代碼塊或函式的末尾為止。
3)函式形參的作用域為函式本身。
4)在main中聲明的自動變數的生存期為整個程式運行時間,儘管其作用域為main函式
5)當函式退出時,在函式中聲明的自動變數的生存期結束。
6)儘管靜態局部變數的作用域為其函式內,但其生存期一直到程式運行結束。
7)如果不重新進行聲明,那么所有變數在其作用域內是可見的。
8)如果某個變數在其作用域內重新進行聲明,那么在重聲明變數的作用域內原變數是不可見的。

相關詞條

熱門詞條

聯絡我們