Iniziative

Corso sulla programmazione in C


Deposito Bulk - via Niccolini 34-36 - Milano - dal 5 marzo 2001


Piu' corsi al LOA

Le lezioni del corso si tengono il lunedi' sera dalle ore 21.00 alle ore 24.00 a partire dal 5 marzo 2001 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
    1. 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.
    2. 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.
    3. Lezione 3. ANSI C: Array. Funzioni.
      • Array.
      • Array multidimensionali.
      • Funzioni.
      • Passaggio di parametri.
      • Procedure.
      • Ricorsione (cenni).
      • Stringhe.
    4. 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.
    5. ANSI C: Argomenti non trattati.
      • Strutture union.
      • Il preprocessore del C.
      • Commenti (/* */, //).
      • Argomenti da linea di comando.
  • PARTE DUE
    1. 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.
    2. Lezione 2. Gestione dei processi.
      • Conoscenze di base sui processi.
      • fork.
      • Processi zombie.
      • Gestione dei processi: exec, wait.
      • Comunicazione interprocesso: pipe.
      • Accenni alle socket.
    3. Lezione 3. Programmazione di Rete. Parte 1. Le socket.
    4. Lezione 4. Programmazione di Rete. Parte 2. IP-Spoofing.
    5. Lezione 5.
    6. Lezione 6. Programmazione sicura. (buffer overflow)

      Riferimento:  megabug; naga; ziomarzo


TOP
home | docs | chi siamo | iniziative | progetti | loackers | search | links