Linguaggio C

Ekip
A Milano

Chiedi il prezzo
Vuoi parlare del corso con un consulente?

Informazione importanti

  • Corso
  • Milano
Descrizione

Obiettivo del corso: Questo corso è indirizzato a chi intenda affrontare la programmazione avvalendosi della potenza espressiva e dell'efficienza del linguaggio C. Il corso spazia dai costrutti di base del linguaggio fino ad argomenti avanzati, come l'implementazione di algoritmi complessi e di strutture di dati dinamiche.

Informazione importanti
Sedi

Dove e quando

Inizio Luogo
Consultare
Milano
Via Fabio Filzi, 27, 20124, Milano, Italia
Visualizza mappa

Programma

Descrizione

Questo corso è indirizzato a chi intenda affrontare la programmazione avvalendosi della potenza espressiva e dell'efficienza del linguaggio C. Il corso spazia dai costrutti di base del linguaggio fino ad argomenti avanzati, come l'implementazione di algoritmi complessi e di strutture di dati dinamiche.

Prerequisiti

  • Concetti di base della programmazione strutturata
  • Concetti di base sui processi

    Obiettivi

  • Comprendere la collocazione del linguaggio C nel panorama offerto dai linguaggi di
    programmazione
  • Capirne la potenza espressiva, la libertà e la conseguente responsabilità che offre al programmatore
  • Comprendere la struttura di un programma C ed il funzionamento e l'architettura del corrispondente processo
  • Acquisire i tipi di dati fondamentali e i principali costrutti di linguaggio
  • Comprendere l'uso delle funzioni, degli array e dei puntatori
  • Ottenere una panoramica sulle funzionalità offerte dalla libreria standard C
  • Realizzare strutture di dati complesse e dinamiche

    Argomenti

    Elementi lessicali, sintattici ed operatori
  • Caratteri ed elementi lessicali
  • Regole sintattiche
  • Commenti
  • Parole chiave di linguaggio
  • Identificatori
  • Costanti e costanti stringa
  • Precedenza ed associatività degli operatori
  • Operatori di incremento, decremento ed assegnazione

    I tipi di dati fondamentali
  • Dichiarazioni, definizioni, inizializzazioni, assegnamenti ed espressioni
  • I tipi di dati fondamentali
  • L'operatore sizeof
  • L'istruzione typedef
  • Conversioni di tipo implicite ed esplicite, mediante operatore di cast. Promozioni automatiche nelle espressioni

    Controllo del flusso
  • Verità e falsità in C
  • Operatori relazionali e logici
  • Valutazione abbreviata (short circuited) di espressioni logiche
  • L'istruzione vuota (;)
  • I costrutti di selezione: if else; switch case
  • I costrutti di iterazione: for; while; do whileL'operatore virgola
  • Le istruzioni di salto: goto; break; continue
  • L'operatore condizionale ternario (? :)

    Funzioni
  • Dichiarazione di funzioni (prototipi)
  • Definizione di funzioni
  • L'istruzione return
  • Invocazione di funzioni
  • Passaggio di parametri per valore
  • Regole di scope
  • Gli specificatori di memorizzazione (auto), static, extern e register
  • Ricorsione e considerazioni sull'efficienza

    Array, puntatori e stringhe
  • Array monodimensionali (vettori), accesso tramite operatore di indicizzazione esplicita
  • Puntatori
  • Passaggio di parametri per riferimento
  • Affinità tra array e puntatori
  • Aritmetica dei puntatori
  • Array multidimensionali, accesso tramite indicizzazione esplicita o mediante puntatori
  • Array come parametri di funzioni
  • Puntatori a funzioni
  • Le stringhe come vettori di caratteri terminati dal carattere zero
  • Allocazione dinamica

    Operatori bit a bit ed enumerazioni
  • Complemento a uno e complemento a due
  • Operatori logici bit a bit
  • Operatori di scorrimento
  • Maschere di bit
  • Tipi enumerati

    Il preprocessore C
  • Funzionamento e tempistiche di intervento
  • La direttiva #include
  • La direttiva #define
  • Macro con parametri
  • Compilazione condizionale mediante direttive #ifdef, #ifndef, #endif

    Strutture ed unioni
  • Strutture ed accesso ai loro membri
  • Strutture e funzioni
  • Strutture nidificate
  • Inizializzazione di strutture
  • Unioni
  • Campi di bit

    Strutture di dati dinamiche (cenni)
  • Liste concatenate
  • Pile (stack)
  • Code
  • Alberi

    Principali funzionalità di libreria standard (cenni)