ou soit un paramètre dans ta fonction (note que vu la nature de l'appelant (loop) tu va rencontrer le même problème pour déclarer ta variable...)
void loop{
int toto=1;
for(;;){
fonction(toto);
}
}
fonction(param){
param=param+1;
Serial.print(param);
}
Cette écriture ne permet pas à l'appelant de récupérer toto et donc d'incrémenter toto à chaque itération.
Il faut que fonction() retourne un entier
void loop{
int toto=1;
for(;;){
toto=fonction(toto);
}
}
int fonction (int param){
int temp=param+1;
Serial.print(temp);
return(temp);
}
ou alors il faut passer par des pointeurs. Là c'est un peu lourd pour manipuler une pauvre variable. Par contre c'est efficace pour les tableaux et les structures.
void loop{
int toto=1;
for(;;){
fonction(&toto);
}
}
fonction (int* param){
*param=*param+1;
Serial.print(*param);
}
[edit]Oups j'ai fait une boulette dans la version avec pointeur, à l'intérieur de la fonction ce n'est pas toto qui doit apparaitre mais param bien sur. Correction effectuée[/edit]