• Non ci sono risultati.

Introduzione al linguaggio C e a Dev-C++

N/A
N/A
Protected

Academic year: 2021

Condividi "Introduzione al linguaggio C e a Dev-C++"

Copied!
10
0
0

Testo completo

(1)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

1

Microsoft Windows e Dev-C++

Introduzione al

Linguaggio C ed

all’IDE DEV-C++

Le Esercitazioni in Laboratorio

!

MTA + MLAB1/2: Edificio Via Valotti, primo

piano e piano interrato

!

Orario: Giovedì 14:30-17:30

!

Libro:

–  H. M. Dietel e P. J. Dietel C: Corso completo di

programmazione (3° edizione), Apogeo 2007

–  Kim N. King Programmazione in C, Apogeo, 2009.

!

Sito WEB:

http://zeus.ing.unibs.it/FI-GES

!

Esame: sufficienza nella programmazione

vincolante per il superamento

(2)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

3

Programma delle Esercitazioni

! 

Il linguaggio C

–  Introduzione al C e all’ambiente di sviluppo Dev-C++

–  Le variabili nel linguaggio C

–  Le funzioni in C

–  Gli operatori in C

–  Le strutture di controllo condizionali: L'istruzione IF in C

–  Le strutture di controllo iterative: Le istruzioni WHILE e DO-WHILE in C

–  Le strutture di controllo iterative: L'istruzione FOR in C

–  Gli array in C

–  Cicli annidati e matrici in C

–  Le variabili stringhe in C

! 

Il foglio di calcolo MS Excel

! 

Il linguaggio HTML

Cosa è la programmazione?

!

La realizzazione di un programma comprende:

–  L’analisi del problema

–  Il progetto delle strutture dati e degli algoritmi

–  La codifica delle strutture e degli algoritmi progettati

in un linguaggio di programmazione

–  La documentazione del codice prodotto

–  La verifica e validazione del codice prodotto

–  La manutenzione del codice prodotto

!

La programmazione non è solo scrittura di

(3)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

5

Linguaggi di Programmazione

INFORMAZIONI

Insiemi di simboli

da rappresentare

DATI

Insiemi di

simboli {0,1}

CODIFICA

INTERPRETAZIONE

Interprete e Compilatori

! 

Il codice sorgente deve essere tradotto

in linguaggio macchina tramite:

– Interpreti: analizza le istruzioni, identifica le

azioni da eseguire e le esegue

– Compilatori: traduce tutte le istruzioni in

linguaggio macchina e produce un

eseguibile

! 

Programma interpretato meno efficiente

di un programma compilato

(4)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

7

Linguaggio di Programmazione

! 

Linguaggio formale per la descrizione di

programmi per calcolatori

! 

Sintassi vicina al linguaggio umano

! 

Se non ci fossero, bisognerebbe

scrivere in codice macchina

! 

Concetti chiave:

– Variabile: dato o insieme di dati

– Istruzione: comando

Breve storia del linguaggio C

! 

Nato come sottoprodotto di Unix, sviluppato presso i laboratori Bell

da Ken Thompson, Dennis Ritchie ed altri

! 

Unix era originariamente scritto in Assembly (faticoso da gestire)

! 

Per un ulteriore sviluppo di Unix si rese necessario la creazione di

un linguaggio di più alto livello. Thompson sviluppa il linguaggio “B”

! 

Nel 1971divenne evidente che il linguaggio B fosse poco adatto per

i nuovi calcolatori. Ritchie sviluppa una versione estesa del

linguaggio B, che viene chiamata “C”

! 

Nel 1973 Unix viene riscritto totalmente in C

! 

Nel 1989 l’ANSI completa lo standard del C (C89)

! 

Nel 1999 l’ANSI apporta alcuni cambiamenti significativi allo

(5)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

9

Pregi e difetti del linguaggio C

! 

Pregi dei programmi C:

–  Efficienza: “girano” velocemente e con memoria limitata

–  Portabilità: compilatori piccoli e facili da scrivere

–  Potenza: ottenere molto con poche linee di codice

–  Semplicità: numero limitato di comandi

–  Flessibilità: impone poche restrizioni

! 

Difetti dei programmi C:

–  Inclini agli errori

–  Difficili da capire/modificare

Caratteristiche del linguaggio C

!

Adatto alla programmazione di sistema

–  Fornisce accesso a concetti a livello macchina

–  È progettato per essere efficiente

!

Parecchi linguaggi sono basati sul C:

–  C++

–  Java

–  C#

–  Perl

(6)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

11

Algortimo

Editor

Compilatore

Linker

Librerie

Programma

eseguibile

Calcolare il massimo tra 2 numeri

File sorgente

Esempio: prog.c

.obj

.lib

File eseguibile

Esempio: prog.exe

Sistemi di sviluppo integrati

! 

Noti anche come IDE: Integrated Development

Environment

! 

Un pacchetto software che permette di scrivere,

preprocessare, compilare, “linkare” un programma

! 

Supporta la scrittura tramite caratteri e colori differenti

per parole chiavi, identificatori predefiniti ed utente.

Capacità di auto-completare le istruzioni

! 

I componenti di un IDE lavorano assieme di modo

che è possibile eseguire un programma con un

semplice “click” del mouse

(7)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

13

Sistemi di sviluppo integrati

/* Stampa a video una stringa */

#include <stdio.h>

int main(void) {

printf(

“Cogito ergo sum.\n”

);

return

0

;

}

Sistemi di sviluppo integrati

#include <stdio.h> int main(void){

printf(

“Cogito ergo sum.\n”

);return

(8)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

15

Dev-C++

! 

Dev-C++ è un IDE per programmi C/C++

! 

Dev-C++ compila i programmi

(9)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

17

Dev-C++: Salva Programma

Dev-C++:

(10)

A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione

Università degli Studi di Brescia

19

Dev-C++: Correzioni Errori di

Programmazione

Riferimenti

Documenti correlati

ðDefinizione di Funzioni ðDefinizione di Procedure ðChiamata di Funzioni ðChiamata di Procedure ðPassaggio dei Parametri ðProgrammazione Modulare. Termini

Strutture di Dati: Lista &gt;&gt; Rappresentazione con Record e Array. ATTENZIONE ai

© 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 2 Questo insieme di trasparenze (detto nel seguito slide) è protetto dalle leggi sul copyright

Il concetto di variabile nel linguaggio C rappresenta una astrazione della cella di memoria.. L'istruzione di assegnamento, quindi, e` l'astrazione dell'operazione di scrittura

In questo programma facciamo uso della funzione printf() ; prima di usare una qualsiasi funzione è necessario definirla (specificare quali e quanti parametri accetta, e

– Se Body è composto da una sola istruzione si possono omettere le parentesi

Osserviamo, che nella funzione somma sia i parametri formali (m ed n), sia le varia- bili definite all’interno della funzione, i, sono locali alla funzione: cio` e nascono al momento

‣ make verifica automaticamente se un file nell’elenco delle dipendenze è stato modificato dall’ultima applicazione della regola di compilazione. ‣ In caso positivo, riapplica