Tutorial C: prima parte
Il C e il C++ sono probabilmente i linguaggi di programmazione preferiti dai professionisti, e sicuramente quelli preferiti dagli hackerz per i loro loschi scopi. Quindi ora tenterò di spiegarvi i fondamenti del C.
Un esempio di programma C
Ecco come si potrebbe presentare un semplicissimo programma C:
#include <stdio.h>
main() {
int numero;
numero = 3;
printf("Oggi la mamma di GiovanBattista ha fatto %d bucchini", numero);
numero++;
printf("\n\rIeri invece ne ha fatti %d", numero);
}
Spiegazione del codice
Allora, la prima riga del codice, #include <stdio.h>, dice al compilatore di includere nel programma funzioni, tipi e costanti definite in stdio.h. Stdio è appunto una libreria che contiene le funzioni di base per l'input e l'output.
Il blocco principale, quello che viene eseguito automaticamente all'avvio del programma, si chiama main. Le due parentesi tonde dovrebbero contenere gli argomenti da passare alla funzione, in questo caso sono vuote, perché non viene passato nessun argomento. Le parentesi graffe, invece, indicano l'inizio e la fine di un blocco (in questo caso la funzione main).
Con la terza riga, int numero;, dichiariamo una variabile chiamata numero, di tipo int (cioè che va da -32767 a 32767). Altri tipi di variabili comunemente usate sono:
- long = da -2147483647 a 2147483647
- float = da 3,4 * (10-38) a 3,4 * (10+38)
- double = da 1,7 * (10-308) a 1,7 * (10308)
Il tipo char, invece, indica un carattere, che in C altro non è che un numero. Il tipo unsigned char può andare da 0 a 255, mentre un signed char da -127 a 127. Un carattere viene racchiuso tra apici, ed essendo in realtà un numero è lo stesso fare...
carattere = 'A'
oppure...
carattere = 65
In entrambi i casi il carattere sarà la A maiuscola, dato che 65 è il codice ASCII che identifica la A.
Tornando al codice di esempio, con la quarta riga, numero = 3;, assegnamo il valore 3 alla variabile numero. = infatti è in C l'operatore di assegnamento.
Successivamente c'è una chiamata alla funzione printf, contenuta appunto in stdio (per questo abbiamo incluso stdio.h). printf è seguito da una coppia di parentesi tonde all'interno delle quali sono racchiusi i parametri da passare alla funzione, in questo caso la stringa da stampare. Notiamo che le stringhe in C vengono racchiuse tra virgolette.
All'interno delle virgolette si trova anche %d. Cos'è? Semplicemente una specifica di stampa, che indica un numero decimale. Il compilatore capisce che al posto di %d dovrà stampare sullo schermo un numero, che verrà passato come argomento successivamente. Gli argomenti sono separati da virgole. In questo caso alla specifica di stampa %d verrà sostituito il valore della variabile numero, che contiene 3. Quindi apparirà sullo schermo: "Oggi la mamma di GiovanBattista ha fatto 3 bucchini".
numero++; è l'equivalente di numero = numero+1;. Se avessimo voluto incrementarlo di 3 invece avremmo dovuto scrivere numero+=3;; per decrementarlo basta sostituire i più con meno. In questo caso il numero viene incrementato di una sola unità, e conterrà quindi 4.
La chiamata seguente a printf stamperà al posto di %d il nuovo valore di numero, e scriverà quindi: "Ieri invece ne ha fatti 4". \n e \r vengono interpretati come caratteri speciali corrispondenti rispettivamente a nuova riga e ritorno a capo.
-
Appunti Fondamenti I (C)
-
Fondamenti cpp
-
Fondamenti di informatica
-
Fondamenti di informatica - Riassunto completo