static

Description

Le mot-clé static est utilisé pour créer des variables qui sont visibles uniquement dans une fonction. A la différence des variables locales qui sont détruites et créées à chaque fois qu'une fonction est appelée, les variables static persistent au-delà de l'appel de la fonction, conservant leurs données entre deux appels de la fonction.

Les variables déclarées à l'aide du mot-clé static peuvent être créées et initialisées seulement la première fois que la fonction est appelée.

Exemple

#define randomWalkLowRange -20 #define randomWalkHighRange 20 int stepsize; // déclare variable globale int thisTime; // déclare variable globale int total; // déclare variable globale void setup() { Serial.begin(9600); // initialise connexion série } void loop() { // test la fonction randomWalk stepsize = 5; thisTime = randomWalk(stepsize); Serial.println(thisTime); delay(10); } int randomWalk(int moveSize) { static int place; // variable pour stocker la valeur dans la fonction - déclarée avec static et donc conserve la // valeur entre 2 appels de la fonction et aucune autre fonction ne peut changer sa valeur. place = place + (random(-moveSize, moveSize + 1)); if (place < randomWalkLowRange) { // fixe limites haute etbasse place = place + (randomWalkLowRange - place); // direction positive } else if (place > randomWalkHighRange) { place = place - (place - randomWalkHighRange); // direction négative } return place; }

Voir Également

Please note: These are affiliate links. If you buy the components through these links, We may get a commission at no extra cost to you. We appreciate it.