Download - Curs-baze4 Lorena Batagan
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 1/13
Elementele de bază alelimbajului C/C++Caracteristici generale
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 2/13
Sumar
• Expresii; Operatori
• Conversii
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 3/13
Expresii
• Construcţii formate din operanzi (date numerice, logice,
de tip caracter etc.) şi operatori (aritmetici, relaţionali,logici etc.) şi a căror evaluare produce o valoare de unanumit tip.
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 4/13
Expresii• Expresii:
▫ Operanzi: variabile, constante, functii
▫ Operatori Operatorii aritmetici
Operatorii logici şi relaţionali Operatorii la nivel de bit
Operatori de atribuire
Alţi operatori
• Evaluarea expresiilor▫ Conversie
▫ Asociativitate
▫ Prioritate
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 5/13
Operatori aritmetici
Operator Semnificaţie
- Schimbare semn
+ Menţinere semn
-- Decrementare (post/pre)++ Incrementare (post/pre)
+ Adunare
- Scădere* Înmulţire
/ Împărţire
% Împărţire modulo (restul)
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 6/13
Operatori relaţionaliOperator Semnificaţie
> Mai mare
>= Mai mare sauegal
< Mai mic
<= Mai mic sau egal
== Egal
!= Diferit
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 7/13
Operatori logiciOperator Semnificaţie
! Negare
&& Şi logic
|| Sau logic
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 8/13
Operatori pe biţi
Operator
Semnificaţie
& Şi logic pe biţi| Sau logic pe biţi^ Sau exclusiv logic pe biţi~ Negare (complement faţă de 1)
>>Deplasare la dreapta (aritmetică saulogică)
<<Deplasare la stânga(aritmetică sau
logică)
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 9/13
Operatori de atribuireOperator Semnificaţie
= Atribuire simplă
+= Atribuire cu adunare
-= Atribuire cu scădere
*= Atribuire cu înmulț ire
/= Atribuire cu impartire
%= Atribuire modulo
&= Atribuire cu si logic pe biti|= Atribuire cu sau logic pe biţi
^= Atribuire cu sau exclusiv logic pe biţi
>>= Atribuire cu deplasare la dreapta
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 10/13
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 11/13
Priorităţile operatorilorOperatori Asociativitate Prioritate
() [] . -> de la stânga la dreapta Maximă
! ~ - + ++ -- & * (tip) sizeof de la dreapta la stânga
* / %
de la stânga la dreapta
+ -
<< >>< <= > >=
== !=
&
^
|
&&
||
?:
= <<= >>= += -= *= /= %= &= ^= |= de la dreapta la stânga
, de la stânga la dreapta Minimă
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 12/13
Conversii• Implicite
▫ O expresie aritmetica, cum ar fi “x + y”, are si valoare si tip. De exemplu,daca “x” si “y” au tipul “int”, atunci expresia “x + y” are tipul “int”. Dar,
daca “x” si “y” au ambele tipul “short”, atunci “x + y” este de tip “int”, sinu “short”. Aceasta se intampla deoarece in orice expresie, “short” seconverteste la “int”.
• Explicite▫ Operatorul de conversie
Exemple 1) int a=7; float b=(float) a; 2) int a=7; float b=7.3; int c; c=a+int(b);
▫ Funcţii atoi(); atof();
7/21/2019 Curs-baze4 Lorena Batagan
http://slidepdf.com/reader/full/curs-baze4-lorena-batagan 13/13
Bibliografie• 1. I. Gh. Roşca, B. Ghilic-Micu, C. Cocianu, M. Stoica,
C. Uscatu, M. Mircea, L. Bătăgan, C. Silvestru, Bazele
programării calculatoarelor. Teorie şi aplicaţii în C, Ed.ASE, Bucureşti, 2006, ISBN 973-594-591-6
• 2. I. Gh. Roşca, B. Ghilic-Micu, C. Cocianu, M. Stoica,C. Uscatu, Programarea calculatoarelor. Ştiinţa învăţăriiunui limbaj de programare, Teorie şi aplicaţii, Ed. ASE,2003
• 3. Ion Smeureanu, Marian Dârdală, Programarea înlimbajul C/C++, Ed. CISON, Bucureşti 2004, ISBN 973-99725-7-8