Variable scope

出自YFRobotwiki
在2017年9月13日 (三) 09:03由Allblue對話 | 貢獻所做的修訂版本

(差異) ←上個修訂 | 最新修訂 (差異) | 下一修訂→ (差異)
跳轉到: 導覽搜尋

變量的作用域

在Arduino使用的C編程語言的變量,有一個名為 作用域(scope) 的屬性 。這一點與類似BASIC的語言形成了對比,在BASIC語言中所有變量都是 全局(global) 變量。

在一個程序內的全局變量是可以被所有函數所調用的。局部變量只在聲明它們的函數內可見。在Arduino的環境中,任何在函數(例如,setup(),loop()等)外聲明的變量,都是全局變量。

當程序變得更大更複雜時,局部變量是一個有效確定每個函數只能訪問其自己變量的途徑。這可以防止,當一個函數無意中修改另一個函數使用的變量的程序錯誤。

有時在一個for循環內聲明並初始化一個變量也是很方便的選擇。這將創建一個只能從for循環的括號內訪問的變量。


示例

int gPWMval;  // any function will see this variable

void setup()
{
  // ...
}

void loop()
{
  int i;    // "i" is only "visible" inside of "loop"
  float f;  // "f" is only "visible" inside of "loop"
  // ...

  for (int j = 0; j <100; j++){
  // variable j can only be accessed inside the for-loop brackets
  }

}




返回Arduino語法參考列表

更多建議和問題歡迎反饋至 YFRobot論壇