变量作用域

说明

Arduino的C编程语言变量有一个属性叫作用域(scope) 。这一属性在BASIC一类的编程语言中是不存在的。在BASIC语言中所有变量都是 全局(global) 变量。

一个程序内的全局变量是可以被所有函数所调用的。而局部变量只在声明它们的函数内可见。在Arduino的环境中,任何在函数外声明的变量,都是全局变量。例如在setup(),loop()等函数外声明的函数都是全局变量。

当程序变得更大更复杂时,声明局部变量是一种更加有效的变量声明方式。因为局部变量只有在声明它的函数中有效,而其它函数是不能调用它的。这样做可以防止因为粗心而错误的改变变量数值问题。

一般在loop()函数中声明局部变量是一种有效的编程方法。这么做可以产生一个只有在loop()函数中有效的变量,而其他函数无法对该变量进行操作。

示例程序