21
http://ocw.mit.edu

Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Embed Size (px)

Citation preview

Page 1: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

http://ocw.mit.edu

Page 2: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc.

Flusso di controllo, cicli, costrutti di selezioneVettori, Stringhe, puntatoriClassi e oggetti, allocazione della memoriaGestione file di dati

Page 3: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

E’ un estensione del linguaggio C; veloce, portabile a largamente usato.

Scritto da Bjarne Stroustrup nel 1979 nei Bell Labs, chiamato ‘C With Classes’ .

Caratteristiche di livello alto e basso.Linguaggio orientato agli oggetti:

Incapsulamento, ereditarietà. modularità e polimorfismo

Page 4: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

•Il Preprocessore rimuove i commenti e gestisce li direttive di inclusione file, definizioni etc.•Il Compilatore traduce il sorgente nel codice assembly•L’assemblatore crea il codice oggetto , file obj.•Il Linker combina qualsiasi funziona riferenziata dalle librerie e crea il file eseguibile

Page 5: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Contengono i prototipi delle funzioni delle librerie standard C++iostream.h, stdio.h, math.h, stdlib.h, etc…

Page 6: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

•// : Commenti, non influenzano il comportamento del programma• #include <iostream> : dice al preprocessore di includere il file standard iostream• using namespace std; diciamo che usiamo gli elementi della libreria standard C++, dichiarate all’interno di ciò che è chiamato namespace, std in questo caso.• int main () : funzione main{ :inizio• cout << "Hello World!"; stampa la stringa•return 0; fa finire il programma e restituisce 0} :fine codice.

Page 7: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

L’esecuzione del programma inizia qui, la prima cosa che viene fatta.

Il valore di ritorno deve essere interomain non può essere richiamata dall’interno

del programma, solo il sistema può chiamare le funzione main

int main() { }

Page 8: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

• 0 1 2 3 4 5 6 7 8 9 • A B C D E F G H I J K L M N O P Q R S T U V W

X Y Z • a b c d e f g h i j k l m n o p q r s t u v w x y z • _ $ { } [ ] # ( ) < > % : ; . ? * + / ^ & | ~ ! = , \

" ‘ <SPACE>

Page 9: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Un token è il più piccolo elemento di un programma C++ che è significativo per il compilatore.

Categorie di token: identificatori, parole chiave, operatori, puntatori

Tokens sono solitamente separati da spazi bianchi.

Page 10: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Lista delle parole chiave C++. Siccome sono usate dal linguaggio, non sono disponibili all’uso dai programmatori.

Non si possono definire classi, variabili o funzioni che hanno come nome queste parole chiave.

Page 11: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Un operatore è un simbolo che fa eseguire al compilatore “un’azione”. Gli operatori agiscono sugli operandi, e in C++ tutti gli operandi sono espressioni.

Tipi di operatori:AssegnamentoMatematici

Un operatore può essere unario o binario

Page 12: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

L’operatore di assegnamento (=) fa in modo che l’operando a sinistra dell’operatore abbia il suo valore cambiato in quello a destra dell’operatore.x=a+b ; //mette in x il risultato di a+bx=35 ; //mette in x 35

35=X ; // SBAGLIATO!!!!!!!!!!!!!!!!!!!!!!

Page 13: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Addizione (+), sottrazione (-), moltiplicazione (*), divisione (/), resto(%).

Es:x=21/5; //mette in x il valore 4 (21/5 div. intera)x=21 % 4 ; //mette in x 1, resto di 21/5 div. intera.

Page 14: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Operatori binari, agiscono su due operatori:Es:

a + b a % bOperatori “unari”, agiscono su un operatoreEs:

! b //! Not logico.(& , ~ , * , + , ++ , – , –– )

Page 15: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Tipi di separatori:{} spesso usato per definizione di funzioni() usato spesso per condizioni., usato ad esempio nella dich. di variabili.; indica la FINE dell’istruzione.[] vettore.

Page 16: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Nome Descrizione Dimensione Range

int Intero 4 bytes Con segno: 2147483648 a 2147483647 Senza segno: 0 a 4294967295

short int (short)

Intero corto 2 bytes Con segno: 32768 a 32767 Senza segno: 0 to 65535

long int (long) Long integer. 4 bytes Con segno: 2147483648 a2147483647 Senza segno: 0 to 4294967295

char Carattere/intero piccolo

1 byte Con segno: -128 a 127; senza segno 0 a 255

Page 17: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Nome Descrizione Dimensione Range

bool Booleano: assume solo due valori, true o false;

1 byte true (1) o false (0)

float Numeri in virgola mobile

4 bytes +/ 3.4e +/ 38 (~7 cifre)

double Numeri in virgola mobile in doppia precisione

8 bytes +/ 1.7e +/ 308(~15 cifre)

double Numeri in virgola mobile in doppia precisione

8 bytes +/ 1.7e +/ 308 (~15 digits)

Page 18: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Inserire il tipo di dato PRIMA poi il nome della variabile.

Es: char tasto;int area=0; //dichiarazione con

inizializzazionefloa lat1=0, lato2; // separare le variabili con ,

Consigli: Chiarezza e leggibilità:int a; // non ci dice niente sul uso della variabile a.int cateto; //Ok, sarà il cateto di un triangolo rett.

Page 19: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Ricordarsi che il C++ è un linguaggio case sensitive, distingue tra maiuscolo e minuscolo.

Es: char tasto,Tasto,tAsto,TASTO; // tutte diverse.

Funzioni: Usare verbi come nome funzione. Es: LeggiNome();CalcolaArea();Le costanti tutte maiuscole.Es: float PI = 3.141592653

Page 20: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Includere i file di libreria:#include <iostream> using namespace std;Dichiarare la funzione mainint main(){Dichiarare le variabiliint area; float area2;

Page 21: Http://ocw.mit.edu. Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti

Stampiamo sullo schermocout<<“Hello”;cout<<“I like C++ ”<<“more than Pascal.”;Ricevere un input (da tastiera)int numero; //Dichiarare la varibile PRIMA!cout<<“ Inserire un numero”; // Comunicare

//all’utente cosa deve fare!cin>>numero; //Ricevere il valore digitato.Scriver il resto del codice e CHIUDERE le parentesi

aperte!