Concetti Chiave
- Le parole chiave in C sono riservate e non possono essere usate come identificatori; ci sono 32 keywords secondo ISO C89.
- Gli identificatori devono iniziare con una lettera o un underscore, sono case-sensitive e non hanno limiti di lunghezza specifici, ma i primi 31 caratteri sono significativi per variabili automatiche.
- Le costanti letterali in C si dividono in costanti intere, decimali o in virgola mobile, e carattere, con la possibilità di utilizzare sequenze di escape per rappresentare caratteri speciali.
- Le stringhe letterali in C sono sequenze di caratteri racchiuse tra doppi apici e possono includere caratteri Unicode disponibili sul calcolatore.
- I commenti in C sono utilizzati per annotare il codice e possono essere utili per la comprensione del programma, ma non influenzano l'esecuzione del codice stesso.
Categorie lessicali in C
Le parole valide sono usate per la codifica dei programmi, in C le principali categorie
lessicali o token sono:
- Parole chiave o parole riservate o keywords, che non possono essere utilizzate
come identificatori di variabili o funzioni. Per ISO C89 ci sono 32 keywords:
auto break base char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
Regole per gli identificatori
- Identificatori, parola composta da caratteri maiuscoli e minuscoli dell’alfabeto, dalle cifre e da _. Regole per nome degli identificatori:
• il primo carattere non può essere una cifra
• non si possono usare le parole chiave
• sono case-sensitive, minuscole e maiuscole sono diverse
• non ci sono limiti specifici per la lunghezza, l’implementazione del compilatore considera significativi almeno i primi 31 caratteri per le variabili automatiche, mentre per i nomi di funzioni e di variabili esterne questo numero può essere anche inferiore, poichè compilatori e assemblatori potrebbero usare nomi esterni su cui non si ha alcun controllo, si garantiscono quindi solo sui primi 6 caratteri Vengono utilizzati per:
• nomi di variabile o funzione
• membro o nome di struct, union ed enum
• nome di tipo (con typedef)
• nome di macro o parametro di macro
Costanti letterali in C
- Costanti letterali, che vengono suddivise in:
• Costanti intere, sequenza di cifre ed eventualmente lettere, il primo carattere deve essere una cifra. Può avere segno + o -. Può avere un prefisso che specifica la base: ottale (‘0’), esadecimale (‘0x’ o ‘OX’).
• Costanti decimali o in virgola mobile, numero reale che può essere scritto utilizzando la forma decimale o la notazione scientifica:
[
• Costanti carattere, racchiuse tra apici ‘ ‘.
E possibile utilizzare caratteri speciali non stampabili, dette sequenze o
caratteri di escape:
\a= segnale acustico
\b= battuta indietro
\f= salto pagina
\n= nuova riga
\b= battuta indietro
\r= ritorno a capo della stessa riga
\t= tabulazione orizzontale
\v= tabulazione verticale
\\= \ barra rovesciata
\= ‘ apice singolo
\?= ? punto di domanda
\”= " doppi apici
\0= NULL Carattere nullo o di fine stringa
È possibile rappresentare un simbolo nel set di caratteri della macchina usando \ooo.
Stringhe e commenti
- Stringhe letterali o costanti alfanumeriche, sequenza di caratteri compresi tra doppi apici “ “, usando i caratteri disponibili sul calcolatore, in genere i caratteri Unicode
- Commenti
- Segni di punteggiatura e operatori
Domande da interrogazione
- Quali sono le principali categorie lessicali in C?
- Quali sono le regole per la creazione di identificatori in C?
- Come sono suddivise le costanti letterali in C?
- Cosa sono le stringhe letterali in C e come vengono rappresentate?
In C, le principali categorie lessicali o token includono parole chiave (32 keywords secondo ISO C89), identificatori, costanti letterali, stringhe e commenti.
Gli identificatori devono iniziare con un carattere alfabetico, non possono essere parole chiave, sono case-sensitive e non hanno limiti specifici di lunghezza, anche se i primi 31 caratteri sono significativi per le variabili automatiche.
Le costanti letterali in C si suddividono in costanti intere, costanti decimali o in virgola mobile, e costanti carattere, con la possibilità di utilizzare caratteri speciali tramite sequenze di escape.
Le stringhe letterali in C sono sequenze di caratteri racchiuse tra doppi apici e possono includere caratteri Unicode, mentre i commenti possono essere utilizzati per annotare il codice.