Corso di programmazione

[Corso di Programmazione #11] – Casting

[Corso di Programmazione #11] - Casting 1

Benritrovati, oggi nella undicesima puntata di corso di programmazione parleremo del casting, ovvero un metodo che ci consente di convertire un variabile da un tipo a un altro tipo, andiamo ad approfondire insieme!

Senza titolo

Tramite il casting possiamo convertire per esempio una variabile di tipo int in una varibile di tipo float. Esiste di due tipi e a loro volta si dividono in due differenti tipi di esecuzione, implicito ed esplicito.

il primo tipo è la promozione automatica, ovvero quando passiamo da una variabile di “inferiore” a una più grande, che occupa più spazio di memoria, e questo non comporta nessuna perdita di dati, poichè andiamo ad “allargare”, vediamo un’esempio:

int num1;
float num2;
num1=3;
num2 = num1;

in questo caso possiamo vedere che una variabile int si è trasofrmata in una variabile di tipo  float, perciò il valore 3 assegnato a num1 resta tale quale nella variabile num2.

il secondo caso di casting è la coercizione ovvero quando si passa da una v ariabile “superiore” a una variabile inferiore, questo comporta una perdita di dati, vediamo un’esempio:

float num1;
int num2;
num1= 3.21;
num2=num1;

quresto è un caso di coercizione con perdita di dati poichè il valore assegnato a num2 di tipo decimale si trasforma in un numero di tipo intero con la perdita dei numeri decimali.

Tutti e due questi tipi di casting si possono eseguire in modo implicito e in modo esplicito. quello effettuato nei due esempi precedenti sono di tipo implicito, è preferibile però effettuare il tipo esplicito per maggiore chiarezza. vediamone un esempio:

int numero;
float reale
reale = 27.26;
numero = (int) reale;

questo come potetete osservare è una coercizione in quanto si passa da float a int con la perdita dei decimali, provate voi ora a fare una promozione automatica di tipo esplicito, magari scrivetelo nei commenti!

Vi aspetto al prossimo articolo in cui introdurremo la selezione.

Leave a Response

Translate »

Su questo sito utilizziamo strumenti nostri o di terze parti che memorizzano piccoli file (cookie) sul tuo dispositivo. I cookie sono normalmente usati per permettere al sito di funzionare correttamente (cookie tecnici), per generare statistiche di uso/navigazione (cookie statistici) e per pubblicizzare opportunamente i nostri servizi/prodotti (cookie di profilazione). Possiamo usare direttamente i cookie tecnici, ma hai il diritto di scegliere se abilitare o meno i cookie statistici e di profilazioneAbilitando questi cookie, ci aiuti ad offrirti una esperienza migliore con noi. 

 

>> Cookie Policy <<