A recipe of: c basics (Variabili e Costanti Tutorial)

Variabili e Costanti.

Con questo Tutorial, cerchero’ di farvi capire come posso venire “immagazzinati” i dati nel linguaggio di programmazione C.

Vedremo come e dove salvare i dati, la definizione di variabile e la definizione di costante.

 

Ingredienti:

 

Iniziamo,

Cosa e’ una costante?

Una costante, la possiamo vedere come una scatola, che possiamo utilizzare una volta sola, possiamo metterci dentro un contenuto, e quest’ultimo, una volta inserito non possiamo piu’ andarlo a modificare.

Come si definisce una costante, a cosa serve?

Una costante possiamo definirla tramite questo tipo di stringa:

#define <identificatore> <valore>

solitamente, vanno definite prima delle variabili, e dopo le direttive al preprocessore e l identificatore della costante e’ solitamente scritto tutto in maiuscolo.

E’ molto utile quando abbiamo a che fare con valori che si ripetono molte volte nel nostro programma, per esempio, dovessimo andare a utilizzare un valore, in molteplici stringhe nel nostro codice, diciamo per esempio che questo valore venga ripetuto 100 volte nel nostro programma, e ad un tratto dovremo modificare quel valore, in un altro valore, senza l ausilio di una costante, dovremo andare a cercare e modificare quel valore 100 volte, con l ausilio di una costante invece, ci basterebbe andare a modificare la stringa #define <identificatore> <valore> e assegnargli il nuovo valore.

 

Cosa e’ una variabile?

Una variabile, la possiamo identificare come un contenitore, dentro il quale, possiamo andarci a immagazzinare un   dato, farlo evolvere, e farci delle operazioni a noi utili per sviluppare il nostro programma.

In matematica possiamo vederla cosi, possiamo immaginare la nostra variabile identificandola con la lettera x, e assegnare a questa il valore 5 tramite l’espressione x = 5, e magari poi farla evolvere/cambiarla con l’operazione x = 5 + 2 e quindi far diventare la nostra x uguale a 7.

In programmazione, e’ tutto analogo, e alla nostra variabile possiamo assegnare qualsiasi valore, a seconda di che tipo la creiamo, per esempio, volessi creare una variabile appartenente all’insieme dei numeri reali, in programmazione, definirei questa variabile di tipo “int”, intero, nel caso volessi assegnare a questa variabile una lettera, allora, in programmazione, definirei questa variabile di tipo “char”.

 

Esempio pratico (capire dove come, e perche’ definire le nostre variabili)

Ora, per capire torniamo con la parte pratica e andiamo a utilizzare il nostro compilatore Online.

Compilatore

Che al solito, ci riportera’ il programma base “Hello world”, ma che adesso cercheremo di andare a complicare un po’ a seconda delle nostre esigenze.

 

codingground

 

Come gia’ specificato sopra, aperto il link ci ritroveremo in questa schermata.

Ora andiamola a modificare aggiungendo qualche stringa di codice.

#include <stdio.h>

int variabile_globale;
int main()
{

int variabile_locale;
printf(“Hello, World!\n”);

return 0;
}

Come potete vedere, ho aggiunto 2 righe di codice, in una ho definito una variabile di tipo intero di nome “variabile_globale”, nell’altra sempre una variabile di tipo intero ma di nome “variabile_locale”.

Nel linguaggio di programmazione c, lo standard, quando andiamo a scegliere il nome delle variabili, e’ che esse siano scritte in minuscolo e nel caso formate da piu parole, queste parole dovranno essere divise da un underscore    ” _ “.

Ora cerchiamo di vedere dove ho posizionato le due nuove stringhe.

#include <stdio.h>

int variabile_globale;
int main()
{

Potete vedere che la stringa “int variabile_globale” l’ho posizionata al di fuori della funzione main, sotto le direttive al preprocessore, questo tipo di variabili, posizionate non all’interno, ma fuori dalle nostre funzioni, sono dette variabili globali.

Una variabile globale e’ una variabile che e’ visibile nell’intero programma, per esempio se io avessi un’altra funzione, oltre alla funzione main, denominata “void funzione(){ }” questa funzione, cosi come la funzione main, avrebbe accesso e potrebbe vedere la variabile globale.

int main()
{

int variabile_locale;
printf(“Hello, World!\n”);

return 0;
}

Qui, potete osservare che la stringa “int variabile_locale” si trova all’interno della nostra funzione main, ed e’ definita come una variabile locale.

Le variabili locali sono variabili che sono visibili solo all’interno della funzione nella quale sono state definite, quindi riprendendo l’esempio fatto in precedenza per le variabili globali, se avessi un’altra funzione, oltre alla funzione main, denominata “void funzione(){}” questa funzione, NON, avrebbe accesso, ne potrebbe vedere la variabile locale che e’ stata definita dentro la funzione main.

Assegnare un valore a una variabile

E’ importante, per evitare Warning, e malfunzionamenti del nostro programma, andare sempre a definire il valore delle nostre variabili.

Di seguito vado a mostrarvi due metodi con i quali poter assegnare dei valori alle nostre variabili.

#include <stdio.h>

int variabile_globale = 5;

int main()
{
int variabile_locale;
variabile_locale = 13;

printf(“Hello, World!\n”);
return 0;
}

Come potete vedere dal codice, in un caso, ho assegnato un valore alla variabile direttamente nella sua dichirazione.

Nel secondo caso, invece, ho assegnato, alla variabile locale, il valore 13 in una nuova linea di codice.

Entrambi i metodi sono giusti, ricordatevi sempre i punti e virgola, sembra una banalita’ ma la maggior parte degli errori “stupidi” sono dati da una svista.

 

Stampare una variabile

Per ora questo tutorial e’ stato piu’ che altro un’apprendimento di teoria base sulle variabili, ora per farvi lavorare un po’ con esse, vi propongo un piccolo programma a due funzioni con il andare a stampare i valori delle nostre variabili.

Prendiamo in considerazione il codice

#include <stdio.h>

int variabile_globale = 5;

int main()
{
int variabile_locale;
variabile_locale = 13;

printf(“\nHello, World!\n\n”);
printf(“Ciao sono la variabile locale, il mio valore e’ %d\n”,variabile_locale);
printf(“Ciao sono la variabile globale, il mio valore e’ %d\n\n”,variabile_globale);
return 0;
}

Questo codice va a stampare 3 frasi, il nostro hello world, del tutorial precedente, e i valori della variabile locale e della variabile globale.

printf(“%tipo”,variabile);

Analizziamo questra stringa di codice, come primo “parametro” abbiamo la funzione di stampa “printf” seguita dalle parentesi, dove all’interno delle virgolette sceglieremo cosa andare a stampare su console, all’interno delle virgolette troviamo un “%tipo”, nel caso del nostro programma, sara’ un “%d”, questo valore cambia a seconda di cosa andiamo a stampare, “%d” funziona per andare a stampare interi o double, ma nel caso volessimo andare a stampare una lettera, cambierebbe in “%c”, per una stringa “%s” etc.

Una volta chiuse le virgolette, dopo aver messo una virgola, andremo a mettere gli identificatori delle variabili che abbiamo scelto di stampare, cosi in ordine di come le abbiamo piazzate all’interno delle virgolette.

 

Se andate a compilare e poi eseguire il codice sopra riportato QUI, otterrete questo output nella console:

 

console

 

Con questo finisco il tutorial di oggi.

Domani vi daro’ una lista completa dei tipi di variabili e come andarle a stampare.

 

 

 

Saluti dal vostro nabbo Developer

Marco Tamagno

Facebook

Google+

Rispondi