Funzione che non accetta nulla e restituisce un risultato.
Affinché una funzione restituisca un valore numerico, deve essere dichiarata con il tipo di dati da restituire. È necessario pensare in anticipo quale tipo verrà restituito per evitare errori. Ad esempio, sumFunction funziona con il tipo di dati byte, somma due di questi tipi di dati. Ciò significa che il risultato potrebbe superare il limite del tipo di dati byte, il che significa che la funzione dovrebbe restituire, ad esempio il tipo di dati int. Ecco perché anche il tipo di dati della variabile c è int.
Per restituire un valore, abbiamo bisogno dell'istruzione return, che restituirà un numero. Qui è necessario ricordare che return non restituisce solo un valore, ma completa anche l'esecuzione della funzione, ovvero le azioni specificate dopo return non verranno più eseguite! In effetti, questo è molto conveniente, perché con l'aiuto di costruzioni logiche e operatori di selezione, puoi fornire diversi rendimenti nella funzione, che restituiranno valori diversi.
Riscriviamo il codice in modo che i numeri a e b vengano sommati e il risultato sia restituito dalla funzione e uguaglieremo questo risultato a c.
byte a, b;
int c;
void setup()
{
a = 5;
b = 7;
c = sumFunction();
// variabile c ha valore 12
}
void loop()
{
}
int sumFunction()
{
return (a + b);
}
La funzione è diventata un po' più universale. Ora il risultato dell'addizione
di a e b come funzione può essere utilizzato in altri luoghi ed equiparato ad altre variabili. Per rendere il codice ancora più versatile, passiamo i valori per l'addizione come parametri.