
Guida completa al C, per imparare a programmare di tutto in un linguaggio universale! Il linguaggio di programmazione C è un linguaggio di programmazione molto noto e ampiamente utilizzato per creare programmi per computer.
In tutto il mondo i programmatori adottano il C come linguaggio di programmazione perché consente di ottenere il massimo controllo e la massima efficienza. Questa animazione mostra l'esecuzione di un semplice programma C. Leggendo questo articolo fino alla fine capirete come funziona!
Se siete programmatori, o se siete interessati a diventare programmatori, acquisirete almeno un paio di vantaggi imparando a programmare in C:
-
• sarete capaci di leggere e scrivere codice per un ampio numero di piattaforme – praticamente tutto dai microcontrollori ai sistemi scientifici più avanzati può essere scritto in C. Anche molti sistemi operativi moderni sono scritti in C.
• Passare al linguaggio C++, orientato agli oggetti, diventa più facile. C++ è un'estensione del C, ed è praticamente impossibile imparare il C++ senza imparare prima il C.
In questo articolo, analizzeremo l'intero linguaggio C per mostrarvi come diventare un programmatore C, proprio partendo dai fondamentali. Sarete incredibilmente sorpresi dalle quantità di cose che potrete create una volta che avrete imparato il linguaggio C.
Il C è un linguaggio di programmazione. Ciò significa che potete usare il C per creare elenchi di istruzioni che il vostro computer dovrà seguire. C è uno delle migliaia di linguaggi di programmazione correntemente usati. Il C ha parecchi hanno di vita alle spalle ed è stato ampiamente adottato in vari settori perché dà ai programmatori il massimo controllo ed efficienza. Il C è un linguaggio facile da imparare. E' appena un po' più “criptico” di altri linguaggi, ma è facile superare rapidamente l'apparente astrusità del linguaggio.
Che cosa è il C?
Il C è un cosiddetto linguaggio compilato. Ciò significa che una volta che viene scritto un programma in C, lo si deve eseguire attraverso un compilatore C per trasformare il programma in un eseguibile che il computer può comprendere e quindi eseguire.
Un programma in C è in una forma human-readable (ossia comprensibile dall'uomo), mentre l'eseguibile generato dal compilatore è machine-readable (comprensibile dal computer). Quindi, scrivere per poi far eseguire un programma in C significa prima di tutto avere a disposizione un compilatore C. Se si usa una macchina UNIX (per esempio, se si scrive uno script CGI in C e se il computer host è un computer UNIX, o se si è uno studente che lavora/studia in un laboratorio dove spesso si trovano macchine UNIX), il compilatore C è disponibile gratuitamente. Il compilatore C si chiama cc o gcc ed è disponibile da linea di comando.
Se siete degli studenti, la vostra scuola probabilmente vi fornirà un compilatore – verificate cosa si usa nella vostra scuola e imparate ad usare quello. Se state lavorando a casa su una macchina Windows, dovrete probabilmente scaricare un compilatore C gratuito oppure acquistare un compilatore commerciale. Un compilatore commerciale ampiamente utilizzato è il compilatore Microsoft Visual C (che compila sia programmi in C che in C++). Sfortunatamente, questo programma costa svariate centinaia di dollari. Se non avete centinaia di dollari da spendere in un compilatore cosiddetto commerciale, allora potete pensare di usare uno dei compilatori disponibili gratuitamente sul Web. Un buon punto da cui partire per cercare un compilatore C gratuito è http://delorie.com/djgpp.
Iniziamo con un programma C estremamente semplice e lo costruiremo passo passo per voi. Supporremo, in questo articolo, che si stia utilizzando una linea di comando UNIX e il gcc come compilatore. Se non avete il gcc, questo articolo vi sarà comunque utile per capire le fondamenta del C, dovrete semplicemente verificare e comprendere come funziona il compilatore che avete voi a disposizione.
Ed ora, partiamo con la nostra lezione di C.
Programmare in C - Il più semplice programma in C
Partiamo con il programma più semplice possibile e usiamolo per capire le basi del C e il processo di compilazione. Digitate il programma seguente in un editor di testo standard (tanto per fare degli esempi, editor di testo come vi oppure emacs su UNIX. Su Windows potete usare Notepad e su Macintosh TeachText).
Poi, salvate il programma in un file che chiamerete samp.c. Se tralascerete l'estensione .c probabilmente riscontrerete degli errori non appena cercherete di compilarlo, pertanto ricordatevi di aggiungere l'estensione .c al nome del file.
Inoltre, assicuratevi che il vostro editor di testo non aggiunga automaticamente alcuni caratteri extra, come ad esempio .txt, al nome del file. Ecco qui il vostro primo programma:
#include <stdio.h>
int main()
{
printf("This is output from my first program!\n");
return 0;
}
Una volta in esecuzione, questo programma indica al computer di stampare la frase “This is output from my first program” che tradotto in italiano significa “Questo è l'output del mio primo programma”. Fatto ciò, il programma termina. Non esiste praticamente nulla più semplice di questo programma.
Posizionamento:
Quando digitate questo programma, fate in modo di posizionare #include in modo che il simbolo # occupi esattamente la colonna 1 (oppure la parte estrema più a sinistra). La spaziatura e l'indentazione possono essere quelle che preferite. Su alcuni sistemi UNIX si può trovare un programma chiamato cb, il C Beautifier (letteralmente “l'abbellitore” per programmi C) che provvede a formattare il codice indentandolo e spaziandolo per una maggiore leggibilità. La spaziatura e l'indentazione del programma di cui sopra è un ottimo esempio da seguire.
Per compilare questo codice, sono necessari i seguenti passi:
• su di un sistema UNIX, digitare gcc samp.c -o samp (se gcc non funziona provare con cc). Questa linea invoca il compilatore gcc, gli chiede di compilare samp.c e gli chiede di posizionare il file eseguibile che crea sotto il nome di samp. Per eseguire il programma, poi, digitare samp (oppure, in alcuni sistemi UNIX digitare ./samp)
• Su di un sistema DOS o Windows usando DJGPP, digitare gcc samp.c -o samp.exe su di un prompt dei comandi. Questa linea invoca il compilatore chiamato gcc, gli chiede di compilare il file samp.c e di renderlo eseguibile sotto il nome samp.exe. Per eseguire il programma digitare samp.
• Se state lavorando con altri compilatori o altri sistemi di sviluppo, leggete e seguite le istruzioni per il compilatore che state usando per compilare ed eseguire il programma correttamente.
Dovreste vedere l'output del programma “This is output from my firt program!” all'esecuzione del programma. Ecco cosa succede quando si compila il programma:
Se commettete errori di battitura nell'editare il programma, può accadere che il compilatore non lo compila o che non riesca ad essere eseguito l'eseguibile. Se il programma non compila o se il compilato non viene eseguito correttamente, rieditatelo e verificate se vi sono stati effettivamente errori in battitura. Correggete l'errore e riprovate.

Concordo con TecnoMan, hello world, ha rotto le scatole!
Seppur mitico, lo abbiamo usato tutti, insieme alle variabili “pippo” e “pluto” credo possa essere ormai dichiarato miticamente obsoleto
Se poi vi manca, eccovi una collezione di Hello World
Prima di tutto Buongiorno!
Secondo questa è solo la prima parte della guida completa che verrà pubblicata nei prossimi giorni.
Se vuoi il PDF di questa prima parte puoi generarlo da solo, vedi la piccola icona rossa pdf vicino al titolo?
Caro anonimo (non hai nemmeno un nickname da inserire?) se hai critiche falle pure, spiegaci cosa non va in questa prima parte del corso sulla programmazione c. Altrimenti quello dozzinale rimane solo il tuo commento 😉
Emanuele
Hai ragione, ci è sfuggito! I tag < e > sono stati rimossi dall’editor.
Abbiamo inserito quindi correttamente all’inizio del programma
#include <stdio.h>
che poi è la libreria che contiene la funzione
printf()
una delle prime funzioni che si impara quando si inizia con il linguaggio c.
“Certo anche che sono tutti in grado di tenere un blog così, senza verificare le pagine pubblicate…”
Perchè questo atteggiamento? Una svista può capitare ed i commenti servono anche a segnalare quello che agli autori può sfuggire.
Non credo che “tutti” siano in grado di tenere un blog cosi…
Un blog sull’elettronica open source, con articoli molto tecnici ed articoli piu semplici per hobbisti e con un flusso di piu di 50 articoli a settimana!
Se trovi qualcosa del genere in Italia, segnalamelooo
Un pò “colorito” ma eloquente il tuo commento!
Sono d’accordo, questo corso non è IL corso sul linguaggio c, ma solo una guida iniziale.
Il c è spiegato con parole semplici e per questo mi è piaciuto.
Del resto anche il “Kernighan & Ritchie” è spesso criticato…ooops “Kernighan || Ritchie” 🙂
Finito questo ne pubblicheremo uno più avanzato, prometto.
Accettiamo la tua critica.
Anche se piuttosto che DIMINUIRE i contenuti (e quindi ridurre il numero dei nostri collaboratori) preferiamo AUMENTARE la qualità ed i controlli.
Trattiamo argomenti suddivisi in piu di 30 categorie, con esperti in ogni materia
http://dev.emcelettronica.com/your-electronics-open-source-team
quindi abbiamo le potenzialità per scrivere ogni giorno (bene) in ogni categoria che vedi qui a fianco nella sidebar.
Inoltre il web2.0 è interattivo, quindi i visitatori sono liberi (ed invitati) di segnalarci sviste.
Crediamo nella divulgazione libera delle informazioni e nella condivisione del know-how, quindi il nostro blog non sarà mai a pagamento (a volte troviamo ENORMI sviste in articoli a pagamento passami il piccolo sfogo) e quello che vogliamo è SI aumentare la qualità ma ANCHE coinvolgere i lettori nell’articolo, inserendo dei commenti che possono completare l’articolo stesso, migliorandolo, sia sotto il profilo delle sviste, che quello puramente tecnico.
Crepi!
Continua a seguirci, e magari segnalaci anche cosa vorresti veder pubblicato e quali argomenti ti interesserebbe approfondire, se riusciamo, sicuramente ti accontenteremo!
Il programmino è corretto (“ci mancherebbe!” potrebbe dire qualcuno visto il numero esiguo di istruzioni) ed il motivo per cui l’output non viene visualizzato è dovuto sia all’ambiente di sviluppo che al sistema operativo utilizzati. Questo programmino, infatti, usa la modalità non grafica, cioè è un programma per essere eseguito dalla shell o prompt comandi o, come usano dire gli ambienti di sviluppo “visuali”, è in modalità “consolle”.
Per visualizzare l’output potete agire nel modo seguente. Compilate il programma e generate l’eseguibile (estensione .exe in Windows). Aprite poi una finestra di prompt dei comandi (o terminale in Linux) e portatevi nel direttorio in cui è presente l’eseguibile. Digitando il nome dello stesso lo manderete in esecuzione e potrete verificare l’output generato nella stessa finestra.
Ai tempi del DOS questi problemi non eistevano (c’è qualcuno che lo rimpiange?).
Ciao a tutti!
Da dilettante alle primissime armi, con l'obiettivo di imparare a "dominare" i PIC, mi approccio a questo ostico mondo della programmazione…..
Vorrei segnalare, a chi si trovasse nelle mie stesse condizioni e volesse mettere in pratica questa prima lezione, un compilatore C/C++ appena scaricato. Si chiama wxDev–C++, é gratis e mulitilingue (italiano incluso ovviamente…).
Scritto il programma sarà sufficiente salvarlo, selezionare la funzione "compila" dal menù "esegui" della barra degli strumenti ed ecco bello e pronto (nella medesima cartella in cui avete salvato il programma) l'eseguibile .exe.
Procedo con le lezioni….