{{htmlmetatags>metatag-robots=() metatag-title=(CONST | ugBASIC User Manual) metatag-keywords=(ugBASIC,Commodore 64,Commodore PLUS/4,ZX Spectrum) metatag-description=(Pagina del manuale per CONST) metatag-media-og:image=(:ugbasic:logo-ugbasic-fb.png) metatag-og:title=(CONST | ugBASIC User Manual) metatag-og:description=(Pagina del manuale per CONST) }} ====== ugBASIC Manuale Utente ====== ===== CONST ✓ ===== ===== SINTASSI ===== [POSITIVE] CONST identifier = value CONST identifier IN (min,max) = value CONST identifier IN [min,max) = value CONST identifier IN (min,max] = value CONST identifier IN [min,max] = value ==== SCOPO ==== L'uso del comando ''CONST'' permette di definire una costante, che sarà utilizzata successivamente nel programma. Le costanti hanno il vantaggio di essere calcolate una volta per tutte, al momento della compilazione, direttamente dal compilatore e possono essere usate per inizializzare le variabili. Inoltre, le costanti sono globali, cioè sono sempre visibili dovunque, sia nel programma principale che all'interno delle procedure. Infine, le costanti non occupano spazio in memoria. Nella definizione stessa delle costanti è possibile indicare se la stessa deve essere o meno positiva (con la parola chiave ''POSITIVE''). Tale controllo viene svolto al momento della compilazione, e in caso dia esito negativo, darà luogo a un errore di compilazione. Tale condizione è utile per garantire che le precondizioni legate all'hardware siano rispettate (come avviene, ad esempio, calcolando i margini in caso di uno schermo più piccolo del minimo atteso). E' anche possibile definire un intervallo di validità dei valori che saranno rappresentati nella costante. Tale intervallo viene definito con una modalità analoga agli intervalli in matematica: usando la parentesi quadra si intende che gli estremi (minimo, massimo) sono inclusi, mentre una parentesi tonda si intende che gli estremi sono esclusi. ==== ESEMPIO ==== CONST x = 42 POSITIVE CONST y = -42: ' this raises an error! CONST width IN (0,320] = 128 Si vedano anche i seguenti file di esempio: * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/contrib_sierpinski.bas|contrib_sierpinski.bas]]'' * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/contrib_sierpinski2.bas|contrib_sierpinski2.bas]]'' * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/contrib_sierpinski3.bas|contrib_sierpinski3.bas]]'' ==== ABBREVIAZIONE ==== C# ==== DISPONIBILE SU ==== * Atari (400/800) * Atari XL/XE * Commodore 128 (MOS 8502) * Commodore 128 (Zilog Z80) * Commodore 64 * Commodore 64+REU * TRS-80 Color Computer * TRS-80 Color Computer 3 * ColecoVision * Amstrad CPC 664 * Dragon 32 * Dragon 64 * Thomson MO5 * Thomson MO5 * Olivetti Prodest PC128 * Commodore PLUS/4 * SEGA SC-3000 * SEGA SG-1000 * VG-5000 * Commodore VIC-20 * ZX Spectrum 48 ==== 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 CONST|aprire una segnalazione]] per questa parola chiave su GitHub. Grazie!===== POWERED BY ===== [[:it:ugbasic:user:index|{{ :ugbasic:user:logo-ugbasic.png?nolink&600 |}}]]