Linguaggi di programmazione
Il “potere espressivo” di un linguaggio è caratterizzato da:
- Quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell’utente)
- Quali istruzioni di controllo mette a disposizione (quali operazioni e in quale ordine di esecuzione)
Programma = Dati + Controllo ! 1
Christian Morbidoni - Fondamenti di Informatica - a.a. 2018/19 - introduzione al C
Il linguaggio C
Il “linguaggio di programmazione” C è costituito da:
- Un linguaggio di computazione (regole sintattiche e semantiche)
- Un set di librerie standard (linguaggio di coordinazione) - forniscono strumenti per rappresentare i dati e comunicare con la memoria.
- Esempio: gestire input da tastiera, leggere/scrivere file ! 2
Christian Morbidoni - Fondamenti di Informatica - a.a. 2018/19 - introduzione al C
Storia del linguaggio C
- Definito nel 1972 (AT&T Bell Labs) per sostituire l’assembler
- Prima definizione precisa: Kernigham & Ritchie (1978)
- Prima standardizzazione del linguaggio ISO/IEC 9899-1990 (1983) - abbreviato in C89
- Revisione del linguaggio, C99 (1999) ! 3
Christian Morbidoni - Fondamenti di Informatica - a.a. 2018/19 - introduzione al C
Caratteristiche
Caratteristiche (1)
- Linguaggio sequenziale, imperativo, strutturato a blocchi
- Usabile anche come linguaggio di sistema
- Adatto a software di base, sistemi operativi, compilatori, ecc.
- Portabile, efficiente, sintetico ! 4
Christian Morbidoni - Fondamenti di Informatica - a.a. 2018/19 - introduzione al C
Caratteristiche (2)
Basato su pochi concetti elementari:
- Dati (tipi primitivi, tipi di dato)
- Espressioni
- Dichiarazioni / definizioni
- Funzioni
- Istruzioni / blocchi ! 5
Christian Morbidoni - Fondamenti di Informatica - a.a. 2018/19 - introduzione al C
Dati
L'architettura fisica di ogni elaboratore è intrinsecamente capace di trattare vari domini di dati, detti tipi primitivi:
- Dominio dei numeri naturali e interi
- Dominio dei numeri reali (con qualche approssimazione)
- Dominio dei caratteri
- Dominio delle stringhe di caratteri ! 6
Tipi di dato
Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi:
- Esprimere in modo sintetico un insieme di valori
- La loro rappresentazione in memoria
- Un insieme di operazioni ammissibili
- Permettere di effettuare controlli statici (al momento della compilazione) sulla correttezza del programma. ! 7
Tipi di dato in C
Tipi fondamentali (aritmetici o primitivi):
- void
- char
- int
- enum
- float
- double
+ Modificatori di tipo (per alcuni di essi):
- short
- long
- signed
- unsigned
Tipi derivati (a partire dai fondamentali):
- Array
- Funzione
- Struct
- Union
- * (puntatore) ! 8
Tipi di dato primitivi in C (1)
- Caratteri - char (caratteri ASCII, 1 byte)
- Interi con segno
- short [int] -32768 ... 32767 (2 byte)
- int -2147483648 ... 2147483647 (4 byte)
- long [int] -231 ... 231 - 1 (8 byte)
- Naturali (interi senza segno)
- unsigned short [int] 0 ... 65535 (2 byte)
- unsigned [int] 0 ... 4294967295 (4 byte)
- unsigned long [int] 0 ... 264 - 1 (8 byte)
Tipi di dato primitivi in C (2)
- Reali - float (singola precisione, 4 byte)
- Double (doppia precisione, 8 byte)
- Boolean - non esistono in C come tipo primitivo
- Si usano gli interi: zero rappresenta false e uno rappresenta true
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Introduzione
-
Introduzione al linguaggio di programmazione C
-
Introduzione all'IoT
-
Endocrinologia - introduzione