Le lezioni del corso si tengono il giovedi'
sera dalle ore 19.00 alle ore 21.00 a partire dal 26 settembre 2002
all'hacklaess, l'aula corsi invia Niccolini ang. via Fioravanti.
In questo corso verra' introdotto il linguaggio C (seguendo lo standard ANSI). Il corso e' diviso in due parti. Nella prima verranno esaminati i costrutti a disposizione del programmatore e le potenzialita' del linguaggio.
Nella seconda parte saranno invece esaminate alcune librerie (piu' o meno standard) e verranno trattati alcuni argomenti specifici, tra i quali: IO, programmazione concorrente, socket, programmazione sicura, ecc.
Cliccando sul titolo delle lezioni potete scaricare un riassunto delle stesse che viene redatto man mano che queste vengono svolte.
Programma
- PARTE UNO
- Lezione 1. Introduzione all'ambiente di programmazione.
- Breve introduzione e storia del linguaggio C.
- Mini-tutorial sull'utilizzo degli editor e del compilatore GCC (ambiente *nix).
- Esempi di introduzione.
- Conoscenze di base per potersi esercitare nella programmazione C.
- Lezione 2. ANSI C: Tipi, Operatori ed Espressioni. Controllo del flusso.
- Nomi di variabili.
- Tipi di dato e loro dimensione.
- Costanti.
- Dichiarazioni.
- Variabili locali ed esterne.
- Inizializzazioni.
- Operatori aritmetici, relazionali e logici.
- Conversione di tipo (cast).
- Operatori orientati al bit (&, |, ecc..).
- Operatori di assegnamento (*=, +=, ecc..).
- Espressioni condizionali.
- Precedenza e ordine di valutazione.
- Blocchi di istruzioni.
- Blocco condizionale (if, else).
- Blocco condizionale multiplo (else if, switch).
- Loops (while, for, do while).
- Istruzione break.
- Istruzione continue.
- Lezione 3. ANSI C: Array. Funzioni.
- Array.
- Array multidimensionali.
- Funzioni.
- Passaggio di parametri.
- Procedure.
- Ricorsione (cenni).
- Stringhe.
- Lezione 4. ANSI C: Puntatori. Strutture dati.
- Memoria e indirizzi.
- Puntatori.
- Aritmetica dei puntatori.
- Legame tra array e puntatori.
- Puntatori e passaggio di parametri a funzione.
- Definizione di nuovi tipi (typedef).
- Strutture.
- Array di strutture.
- Puntatori a struttura.
- Strutture con auto-riferimenti (cenni).
- Puntatori di puntatori.
- ANSI C: Argomenti non trattati.
- Strutture union.
- Il preprocessore del C.
- Commenti (/* */, //).
- Argomenti da linea di comando.
- PARTE DUE
- Lezione 1. Funzioni di Input/Output su file.
- Gestione dei file secondo standard ANSI C.
- Gestione dei file in standard POSIX.
- File ad accesso sequenziale.
- Lettura e scrittura da file.
- File ad accesso casuale.
- Esempi vari.
- Lezione 2. Gestione dei processi.
- Conoscenze di base sui processi.
- fork.
- Processi zombie.
- Gestione dei processi: exec, wait.
- Comunicazione interprocesso: pipe.
- Accenni alle socket.
- Lezione 3. Programmazione modulare
- Esportazione di funzioni e variabili.
- File header (.h).
- File oggetto e linker.
- Makefile.
- Esempio di progetto.
- Lezione 4.
- Lezione 5.
- Lezione 6.
|