Sei sulla pagina 1di 3

Linguaggio C++

Dopo aver concluso l’algoritmo esso va trascritto in linguaggio di programmazione ad alto livello, il quale:

 Ha un suo formalismo e si attiene a delle regole rigorose (regole sintattiche e semantiche), con
istruzioni ridotte.
 Non deve essere ambiguo.

Ha un proprio lessico, una propria semantica e una propria sintassi:

 Lessico: insieme dei vocaboli utilizzati dal linguaggio (if; do while; while…)
 Sintassi: costituita da regole di formazione cui deve obbedire una frase per poter esser definita tale.
È provvista di significato.
 Semantica: definisce in che cosa consiste tale significato, cioè cosa significa un discorso corretto in
quella lingua.

Il controllo della correttezza sintattica di un linguaggio viene effettuato da un compilatore, se il programma


non è corretto vengono generati degli “errori di compilazione”.

analisi analisi analisi generazione


codice sorgente
lessicale sintattica semantica codice

.obj  nome del file generato, ma non ancora utilizzabile.

Si può programmare anche se si hanno modelli differenti. Come ad esempio il modello procedurale, che si
distingue in

 Imperativo
 Ad oggetti

Compilatori
Nella compilazione la versione tradotta è specifica della macchina sulla quale il programma è compilato

analisi
processin scanning parsing
semantica

Durante queste fasi viene rilevato un insieme di errori (compile-time errors) di tipo statico:
 Fatal errors: errori gravi che non consentono di proseguire

Scrittura in C++, poi compilato  prova .obj


Programma = insieme di dati, istruzioni. L’algoritmo viene salvato come file .exe
I dati possono essere di tipo:
 Numerico
 Alfanumerico
 Booleano (quello del C++)
A loro volta si suddividono in costanti e variabili.
Una volta che tutto il codice è stato fatto, viene memorizzato su una memoria di massa, e per eseguirlo
deve essere copiato nella RAM.

.exe  file finale, viene memorizzato su memoria di massa, è necessario


che venga opiato in RAM (insieme locazione memorie, tutte uguali alle
altre, ognuna con un certo numero di bit), diventa un processo e c’è un
posto specifico pe istruzioni, dati, variabili…

C’è necessità di sapere di come deve essere trattato un dato, dando un nome e definendo un tipo. Non si
può usare lo stesso identificatore per variabili di tipo diverso, perciò per ogni variabile si usa un
identificatore diverso dall’altro, il nome di una variabile deve essere diverso dalle altre. Ogni linguaggio di
programmazione mette a disposizione dei linguaggi semplici.

Ogni variabile porta un nome (identificatore) e a sua natura (tipo)

C++  l’identificatore può essere scritto con un nome a caso, ma si devono avere delle regole:

non possono iniziare con un numero


non può contenere spazi
non si possono contenere caratteri speciali
non può contenere lettere accentate
indicare ciò che contiene
può non avere senso compiuto
può essere composto da due parole (non bisogna mettere lo spazio)
può essere lungo a piacere
può iniziare con l’underscore
può essere composto da un solo carattere

Le variabili:

 Numeriche
1. Intero (int)  32 bit
(short int  16
2. Reale (float)  32 bit
3. Alfanumerico (char)  8 bit
4. Logico (bool)  8 bit

Le istruzioni terminano con il punto e virgola, si possono dichiarare + variabili sulla stessa riga, vanno
separate con la virgola.

L’operazione che effettua lo scambio del contenuto tra due variabili prende il nome di swap.

Bisogna usare un’altra variabile (tempo/swap).

Per le costanti bisogna dare lo specifico valore, dichiarandola :


Const (tipo di dato) identificatore (con maiuscole) (spazio) = valore;

#define (identificatore) valore(senza =)

Libreria= programmi già sviluppati da altri inclusi nel pacchetto ide, viene linkato con il file .obj

Operatori che permettono di inserie e visualizzare su schermo i dati:

 #include <iostream> (per inserire la libreria) (iostream= flusso dei dati in input e in output)
 cout (di defaul, rappresentano flusso dei dati) << “testo” << endl (lascia una riga vuota)
per integrare variabile : cout << “testo” << variabile << endl

#include <iostream>
Using namespace std;
(dichiarare costanti e viariabili)
int main (vanno specificati gli argomenti all’interno di queste parentesi) (parentesi graffa aperta)
(va il codice)

sysrem (“pause”);  funzione che permette di mantenere la finestra dell’esecutivo ancora aperta anche
quando ha terminato l’obbiettivo per cui è stato creato il file
return 0;
(parentesi graffa)

Potrebbero piacerti anche