"FALCO CESARE (BAM - 00541)" wrote: > > > > Appunto. Una funzione restituisce un valore, non un tipo di dato! > > > Anche il casting non trasforma una variabile int in una variabile > > > float: trasforma il valore contenuto nella variabile int in un valore > > > compatibile con una variabile float. > > > > Attenzione: il casting è una conversione di tipo (type casting, > > appunto). > > Vuoi dirmi che se applico il casting su una variabile int > *la variabile* diventa una variabile float?! No, il *valore* diventa di tipo float. Tu hai detto "compatibile con una variabile float". Se intendevi "tipo float" allora siamo d'accordo. Ma allora perché non dire, appunto, "tipo float"? > Comincio a domandarmi se stiamo parlando della stessa cosa :^| Spero di sì! :-) > * Tipo di dato = oggetto astratto che identifica un insieme > di valori (es. numeri interi, caratteri alfanumerici, numeri) > * Valore = contenuto di una variabile > * Variabile = istanza di un tipo dato > > Se partiamo da queste affermazioni, le variabile del Sinclair Basic > possono essere dichiarate come istanze di due soli tipi di dato > elementari: E la conseguenza di questo modo di pensare sarebbe, continuando con l'esempio che avevo già introdotto, che il Clipper ha un solo tipo di dato in quanto non ha dichiarazioni di tipo, il che è palesemente errato in quanto quel linguaggio ha quattro tipi di dato ben diversi (stringa, numerico, logico e data). Ripeto il mio punto di vista: non è necessario che esista la dichiarazione sintattica di tipo di dato perché esistano diversi tipi di dato in un linguaggio. E ripeto anche l'analogia del cast: LET b = INT( 123.456 ) converte il valore in intero troncando la parte decimale ma converte anche il tipo, dato che la variabile b sarà gestita come variabile intera dal calcolatore interno. Scrivendo LET b = 123.456 si ottiene invece una variabile gestita in modo full fp. EMG -- EMAG Software Homepage: http://www.emagsoftware.it The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum The Best of Spectrum Games: http://www.emagsoftware.it/tbosg