Una variabile locale è una variabile temporanea che esiste solo durante il calcolo di una funzione definita dall'utente o durante l'esecuzione di un programma definito dall'utente.
Il seguente segmento di programma mostra un’istruzione For...EndFor loop (descritta più avanti in questo capitolo). La variabile i è il contatore di loop. Nella maggior parte dei casi, la variabile i viene utilizzata solo mentre il programma è in esecuzione.
|
Local i À For i,0,5,1 Disp i EndFor Disp i |
|
À |
Dichiara la variabile i come variabile locale. |
Nota: quando possibile, dichiarare come locale qualsiasi variabile che viene utilizzata solo all’interno del programma e che non deve essere disponibile dopo il termine del programma.
Un messaggio di errore Variabile non definita appare quando si calcola una funzione definita dall’utente o si esegue un programma definito dall’utente che chiama una variabile locale non inizializzata (nessun valore assegnato).
Ad esempio:
|
Define fact(n)=Func Local m À While n>1 n¦m&m: n–1&n EndWhile Return m EndFunc |
|
À |
Alla variabile locale m non è assegnato un valore iniziale. |
A tutte le variabili locali deve essere assegnato un valore iniziale prima di essere chiamate.
|
Define fact(n)=Func Local m: 1&m À While n>1 n¦m&m: n–1&n EndWhile Return m EndFunc |
|
À |
1 viene memorizzato come valore iniziale di m. |
Nota (CAS): funzioni e programmi non possono usare una variabile locale per eseguire calcoli simbolici.
Se si desidera che una funzione o un programma eseguano calcoli simbolici, è necessario utilizzare una variabile globale al posto di una locale. Tuttavia, occorre essere certi che la variabile globale non esista già al di fuori del programma. Possono essere utili i seguenti metodi.
| • | Utilizzare un nome di variabile globale, di solito con due o più caratteri, che probabilmente non esiste al di fuori della funzione o del programma. |
| • | Includere DelVar all’interno di un programma per eliminare una variabile globale, se esiste, prima di chiamarla (DelVar non elimina variabili bloccate o collegate). |