Sunteți pe pagina 1din 17

Elementele de bază ale limbajului C

Elementele de bază ale limbajului C sunt:

Alfabetul şi atomii lexicali


Identificatorii
Cuvintele cheie
Tipurile de date
Constantele şi variabilele
Comentariile
Operatorii şi expresiile
Alfabetul limbajului C
Limbajul C folosește setul de caractere al codului ASCII pe 8 biți.

Mulțimea caracterelor se împarte în trei grupe:


- caractere negrafice (cu codurile 0-31 precum şi 127);
- caracterul spațiu (cu codul 32);
- caractere grafice (cu codurile 33-126).

Caracterele grafice se împart la rândul lor în:


• litere mari (coduri între 65 şi 90);
• litere mici (coduri între 97 şi 122);
• cifre (coduri între 48 şi 59);
• caractere speciale (celelalte coduri).

Următoarele caractere: spațiu, newline (linie nouă), form feed (pagină


nouă) şi tabulatorii orizontal și vertical, se mai numesc spații albe (white
spaces).
Atomii lexicali
Atomii lexicali pot fi:

1. identificatori;
2. constante (explicite) - numerice, caracter, șir;
3. operatori;
4. semne de punctuație.

Un atom lexical trebuie scris integral pe o linie şi nu se poate extinde


pe mai multe linii.

În cadrul unui atom lexical nu se pot folosi spații albe (excepție fac
spațiile dintr-o constantă șir), putem însă folosi caracterul '_'.
Atomii lexicali
Atomii lexicali sunt separați prin separatori, care pot fi:

• spațiul
• caracterul de tabulare orizontală \t
• terminatorul de linie \n
• comentariul, secvență de caractere încadrate între /* şi */ sau
caracterele // și sfârșit de linie.

NB Comentariile sunt ignorate de compilator !


1.Identificatorul
Identificatorii pot fi:

• nume definit de utilizator - nume de variabile, constante simbolice,


funcții, tipuri, structuri, uniuni - este bine sa fie alese cât mai sugestiv
pentru scopul utilizării;

• cuvinte cheie - pot fi folosite doar cu înțelesul cu care au fost definite

• cuvinte rezervate - înțelesul poate fi modificat (! de evitat acest lucru).


Cuvinte cheie
1.Identificatorul

În limbajul C, un identificator este o succesiune de litere şi eventual cifre,


care începe cu o literă.

Lungimea unui identificator poate fi de maximum 255 de caractere, dar


numai primele 32 de caractere se iau în considerare.

Identificatorii se folosesc pentru denumirea variabilelor, constantelor


simbolice, funcțiilor, tipurilor, structurilor, uniunilor etc.

Identificatorii sunt case-sensitive !


2.Constantele
O constantă are un tip şi o valoare.

Atât tipul cât şi valoarea unei constante se definesc prin caracterele care
compun constanta respectivă.

Din constante fac parte:


a) Constantele întregi zecimale
b) Constantele întregi octale
c) Constantele întregi hexazecimale
d) Constantele flotante
e) Constantele caracter
f) Constantele șir de caractere
2.Constantele
a) Constantă întreagă zecimală

O constantă întreagă este un șir de cifre care eventual este prefixat de un


semn (+ sau -) şi, eventual, post fixat de litera L sau l.

O constantă întreagă se reprezintă în binar pe 16 sau 32 de biţi.

Sufixul L sau l forțează reprezentarea pe 32 de biţi.

Exemple Interpretare
12345 întreg zecimal reprezentat în binar pe 16 biți
-12345 întreg zecimal reprezentat în binar pe 16 biţi
12345L întreg zecimal reprezentat în binar pe 32 biţi
2.Constantele
b) Constantă întreagă octală

O constantă întreagă octală este un şir de cifre octale (cifre cuprinse între 0
şi 7) precedat de un 0(zero) nesemnificativ.

Exemple Interpretare
012345 întreg octal reprezentat în binar pe 16 biţi (o cifră octală pe 3 biţi)

c) Constantă întreagă hexazecimală

O constantă întreagă hexazecimală este un şir de cifre hexazecimale (cifre


cuprinse între 0 şi F) precedat de un 0x sau 0X.

Exemple Interpretare
0x12abc întreg hexazecimal reprezentat în binar pe 16 biţi (o cifră pe 4 biţi)
2.Constantele
d) Constantă flotantă
O constantă flotantă este un număr rațional care se compune din
următoarele elemente:
- un semn (+ sau -) care poate lipsi pentru numerele pozitive;
- o parte întreagă care poate fi şi vidă;
- o parte fracționară care poate fi şi vidă;
- un exponent care poate fi şi vid.
Prezența părții fracționare este suficientă pentru ca numărul respectiv să
reprezinte o constantă flotantă.
Absența părții fracționare implică prezența părții întregi şi a exponentului.

Exemple
3.14; 0.314e1; 3.1415926; -2.71828; 2. ; +271828E-5
2.Constantele
e) Constantă caracter
O constantă caracter reprezintă un caracter şi are ca valoare codul ASCII al
caracterului respectiv.
O constantă caracter grafic se poate scrie incluzând caracterul respectiv
între caractere apostrof ‘ ’.

Anumite caractere negrafice au notații speciale la scrierea cărora se


utilizează caracterul backslash (\).
2.Constantele
f) Constantă şir de caractere

O constantă şir de caractere este o succesiune de zero sau mai multe


caractere delimitate prin ghilimele “ ”.

Ghilimelele nu fac parte din șirul de caractere.

Exemple
“123”; “Limbajul C”; “sir de caractere”; “sir\””; “”(șirul vid).
3.Operatori
Limbajul C folosește un set bogat de operatori, care sunt simboluri ale
operațiilor specificate în cadrul expresiilor.
Operatori
aritmetici + - * / %
de atribuire =
de atribuire += -= *= /= %=
augmentată (exemplu: x+=5 este echivalent cu x=x+5)
relaționali == != > < >= <=
logici ! (negație) && (și) || (sau) ^ (sau exclusiv)
incrementare/ ++ -- (pre- sau post-incrementare/decrementare)
decrementare (exemplu: y=x++ sau y=--x)
evaluare ?:
condițională (exemplu: expr0 ? expr1 : expr2)
Etc.

Convenție în limbajul C:
Valoarea 0 este interpretată ca fals şi orice valoare diferită de zero ca adevărat.
3.Operatori – prioritatea lor:
( ) [ ] . ->
- (unar) +(unar) *(unar) &(unar) ! ~ ++ -- (tip) sizeof
* / %
+ -
<< >>
< <= >= >
= = !=
&
^
|
&&
||
? : (ternar)
= op= op poate fi: *(binar) / % +(binar) –(binar) << >> & ^ |

,
4.Semne de punctuație

Exemple