{{htmlmetatags>metatag-robots=() metatag-title=(DATA | ugBASIC User Manual) metatag-keywords=(ugBASIC,Commodore 64,Commodore PLUS/4,ZX Spectrum) metatag-description=(Pagina del manuale per DATA) metatag-media-og:image=(:ugbasic:logo-ugbasic-fb.png) metatag-og:title=(DATA | ugBASIC User Manual) metatag-og:description=(Pagina del manuale per DATA) }} ====== ugBASIC Manuale Utente ====== ===== DATA ✓ ===== ===== SINTASSI ===== DATA data1 [, data2 [, data3 ... ] ] DATA [AS data type] data1 [, data2 [, data3 ... ] ] DATA LOAD "filename" AS TEXT ==== SCOPO ==== Il comando ''DATA'' serve per creare un elenco di dati che saranno utilizzati in altre parti del programma. È come un contenitore in cui vengono memorizzati valori che saranno poi "letti" e utilizzati da altri comandi. Il comando ''DATA'' è solitamente posizionato all'inizio del programma o in una sezione dedicata alle definizioni dei dati, ma non è obbligatorio. ''data1'', ''data2'', ... e così via devono essere sostituiti con i dati che si desidera memorizzare all'interno del programma. Possono essere numeri o stringhe di testo. Per leggere i dati contenuti in un'istruzione ''DATA'', si utilizza il comando ''READ''. Questo comando assegna i valori contenuti in ''DATA'' alle variabili. È possibile utilizzare più istruzioni ''DATA'' per riempire un array con un set di valori. Un altro utilizzo è quello di creare piccole tabelle di dati, ad esempio per rappresentare menu o elenchi di prodotti. È inoltre possibile memorizzare costanti che vengono utilizzate frequentemente nel programma. I valori ''DATA'' verranno letti da sinistra a destra, iniziando dalla prima riga contenente un'istruzione ''DATA''. Ogni volta che viene eseguita un'istruzione ''READ'', la posizione ''DATA'' salvata dell'ultimo ''READ'' viene avanzata al valore successivo. Le stringhe devono essere scritte tra virgolette, quindi caratteri come virgola, spazio, due punti, caratteri grafici o caratteri di controllo devono essere scritti tra virgolette doppie come le costanti stringa. ''RESTORE'' reimposta il puntatore della posizione ''DATA'' corrente all'avvio del programma in modo che il successivo ''READ'' legga dal primo ''DATA'' trovato dall'inizio del programma. L'istruzione ''DATA'' memorizza i dati numerici in modo ottimizzato: quindi, se si immette una costante numerica che può essere rappresentata da un singolo byte, verrà memorizzata nel programma come un singolo byte. I numeri in virgola mobile vengono memorizzati con precisione predefinita. Infine, le stringhe vengono memorizzate "così come sono". Di conseguenza, quando si usa il comando ''READ'', ugBASIC eseguirà implicitamente la conversione se non viene usato lo stesso tipo di dati e se è possibile. È possibile evitare questo comportamento usando la parola chiave ''AS'', seguita dal tipo di dati. Separa la definizione dei dati dal loro utilizzo, rende il codice più leggibile e gestibile. È possibile modificare i dati senza dover cambiare la logica del programma. Infine, gli stessi dati possono essere letti più volte in diverse parti del programma. E' disponibile anche una versione della sintassi che permette di caricare i valori presenti in un file esterno. Questa sintassi, al momento, è limitata ai dati di tipo numerico che devono essere separati da un separatore non numerico. ==== ESEMPIO ==== DATA 10, 20, "test" DATA AS INTEGER 10, 20, 30 DATA LOAD "datas.txt" AS TEXT Si vedano anche i seguenti file di esempio: * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/data_example_01.bas|data_example_01.bas]]'' * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/data_example_02.bas|data_example_02.bas]]'' * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/data_example_03.bas|data_example_03.bas]]'' * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/data_example_05.bas|data_example_05.bas]]'' ==== ABBREVIAZIONE ==== Da ==== DISPONIBILE SU ==== ==== PROBLEMI? ==== Se si riscontra un problema nell'utilizzare questo comando, se si ritiene che vi sia un bug oppure che la spiegazione sia poco chiara, è possibile [[https://github.com/spotlessmind1975/ugbasic/issues/new?title=SEGNALAZIONE SU DATA|aprire una segnalazione]] per questa parola chiave su GitHub. Grazie!===== POWERED BY ===== [[:it:ugbasic:user:index|{{ :ugbasic:user:logo-ugbasic.png?nolink&600 |}}]]