INTRODUZIONE ALLA PROGRAMMAZIONE IN C



Type-casting



Il C e' uno dei pochi linguaggi che permette la coercizione, e cioe' permette di forzare una variabile di un tipo ad essere una variabile di un'altro tipo utilizzando l'operatore "()". Ad esempio: int numerointero; int numerointero2=10; float numerofloat=6.34; float numerofloat2; char lettera='A'; numerointero=(int)numerofloat; /* assegna il valore 6 (parte intera) */ numerointero=(int)lettera; /* assegna il valore 65 (codice ASCII) */ numerofloat2=(float)numerointero2 /* assegna 10.0 (valore float) */ Alcuni type-casting vengono fatti automaticamente, principalmente in relazione alle capacita' dei numeri integer. E' buona regola eseguire il type-casting tutte le volte che si e' in dubbio sulla corrispondenza degli operatori nelle assegnazioni. Altro uso che ne viene fatto e' all'interno delle divisioni, per assicurarsi che dia il risultato voluto; se abbiamo due numeri integer come operatori e vogliamo che il risultato sia un float, allora dovremo agire come segue: int intnumber,anotherint; float floatnumber; floatnumber=(float)intnumber/(float)anotherint Questa operazione assicura una divisione in floating-point.