scope

Descrição

Variáveis na linguagem de programação C++, a qual o Arduino usa, possuem uma propriedade chamada escopo. Isso contrasta com antigas versões de linguagens como o BASIC onde toda variável era uma variável global.

Uma variável global é uma que pode ser vista por todas as funções de um programa. Diferentemente, variáveis locais são visíveis apenas às funções nas quais são declaradas. No ambiente Arduino, qualquer variável declarada fora de uma função (ex. setup(), loop(), etc. ), é uma variável global.

Quando programas começam a ficar muito longos e complexos, variáveis locais são uma forma útil de garantir que apenas uma função tenha acesso as suas próprias variáveis. Isso previne erros de programação quando uma função inadvertidamente modifica variáveis usadas por outra função.

Às vezes também é vantajoso declarar e inicializar uma variável dentro de um loop

for
. Isso cria uma variável que pode ser acessada apenas dentro do próprio bloco do loop
for
.

Código de Exemplo

1int gPWMval; // qualquer função poderá acessar essa variável
2
3 void setup() {
4 // ...
5 }
6
7 void loop() {
8 int i; // "i" é "visível" apenas dentro de "loop"
9 float f; // "f" é "visível" apenas dentro de "loop"
10 // ...
11
12 for (int j = 0; j < 100; j++) {
13 // a variável j pode ser acessada apenas dentro das chaves do loop for
14 }
15 }

Ver Também

Suggest changes

The content on docs.arduino.cc is facilitated through a public GitHub repository. If you see anything wrong, you can edit this page here.

License

The Arduino documentation is licensed under the Creative Commons Attribution-Share Alike 4.0 license.