INTRODUZIONE ALLA PROGRAMMAZIONE IN C



Variabili



Il C ha i seguenti tipi di dati: Tipo Size (byte) char 1 unsigned char 1 short int 2 unsigned short int 2 (long) int 4 float 4 double 8 Sui sistemi UNIX tutte le variabili dichiarate "int" sono considerate "long int", mentre "short int" deve essere dichiarato esplicitamente. E' importante notare che in C non esiste un tipo di variabile booleano, quindi si possono utilizzare variabili "char", "int" o meglio "unsigned char". "unsigned" puo' essere utilizzato con tutti i tipi "char" e "int". Per dichiarare una varibile si scrive: var_tipo elenco-variabili-separate-da-virgole ; Le variabili globali si definiscono al di sopra della funzione main(), nel seguente modo: short number,sum; int bignumber,bigsum; char letter; main() { ... } E' possibile preinizializzare una variabile utilizzando = (operatore di assegnazione). Ad esempio: int i,j,k=1; float x=2.6,y; char a; Vediamo due esempi di inizializzazione di variabili che si equivalgono, senza pero dimenticare che il metodo utilizzato nel primo esempio risulta piu' efficiente: Esempio 1: float sum=0.0; int bigsum=0; char letter='A'; main() { ... } Esempio2: float sum; int bigsum; char letter; main() { sum=0.0; bigsum=0; letter='A'; ... } E' possibile effettuare assegnazioni multiple purche' le variabili siano dello stesso tipo. Ad esempio: int somma; char letter="A"; main() { int a,b,c=3; a=b=c; } dove l'istruzione a=b=c (con c=3) corrisponde ad a=3, b=3 e c=3, ma anche in questo caso risulta piu' efficiente il primo metodo. Si possono definire nuovi propri tipi di variabili utilizzando "typedef" (questo risulta utile quando si creano strutture complesse di dati). Come esempio di utilizzo semplice consideriamo come sia possibile creare i due nuovi tipi di variabile "real" e "letter", che potranno successiva- mente essere utilizzati alla stessa maniera dei tipi predefiniti del C. Ad esempio: typedef float real; typedef char letter; variabili dichiarate: real sum=0.0; letter nextletter;