Strumenti Utente

Strumenti Sito


it:ugbasic:user:kw:local_task_variable_operator
Traduzioni di questa pagina:


ugBASIC Manuale Utente

local task variable operator ✓

SINTASSI

   = [variable]
   [variable] = expression
   = [variable$]
   [variable$] = expression

SCOPO

Per garantire l'utilizzo di variabili locali all'interno di procedure parallele, essendo la procedura priva di uno stack, è necessario predisporre un array per contenere questo tipo di informazione. Utilizzando, quindi, l'operatore di accesso agli array, è quindi possibile accedere alle singole variabili, utilizzando come indice l'identificativo del task.

ugBASIC fornisce una forma compatta per indicare questo tipo di accesso. Invece di scrivere v(THREAD) si può scrivere [v]. Questo operatore, chiamato “local task variable operator”, può essere utilizzato dovunque, e in qualsiasi espressione, e può essere utilizzato come destinazione della variabile.

Nell'accesso all'array, come in qualsiasi altra variabile, può essere giustapposto il simbolo del dollaro ($), per indicare che si vuole accedere a una variabile di tipo stringa. In tal caso, un ulteriore controllo di tipo sarà svolto in sede di compilazione, per evitare di far riferimento a una variabile di tipo numerico.

ESEMPIO

  PUT IMAGE token AT [x],[y]
  [x] = [x] + 1
  PRINT [word$]
  [word$] = "ok!"

Si vedano anche i seguenti file di esempio:

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 aprire una segnalazione per questa parola chiave su GitHub. Grazie!

POWERED BY