Sunteți pe pagina 1din 16

Constante, variabile, expresii

Constante

Constante intregi

Zecimale (in baza 10) 11,7,3219


Octale (in baza 8) O constanta in baza 8 se declara
precedatde un 0 nesemnificativ -
0123=123(8)
Hexazecimale (in baza 16) Acestea sunt precedate de 0X sau 0x
OX1A2=1A2(16)
Sau
Ox1A2=1A2(16)
Constante caracter
acestea se trec intre ‘ ’ ‘A’, ‘1’, ‘a’
Memorarea lor se face utilizand tipul char
Se memoreaza codul ASCII al caracterului respectiv.
ex.: ‘1’=49(10)
Constantele caracter se pot declara si sub forma de secventa
escape.
Secventa escape incepe cu caracterul “\”.

ex.: ‘a’- codul sau ASCII este 97(10) =141(8) =61(16)

Deci constanta ‘a’ poate fi scrisa: ‘\141’ sau ‘\x61’


Daca este scrisa in baza 16 este precedata de caracterul ‘x’.
Ce realizeaza secventa urmatoare?

char x1=97 ,x2=‘\141’, x3=‘\x61’, x4=‘a’;


cout<<x1<<x2<<x3<<x4;
Care este rolul acestor secvente escape?

Exista caractere care nu se pot declara


clasic (intre doua caractere apostrof) pt. ca
nu pot fi tastate.
backslash ‘ \\’, ‘\134’, ‘\x5c’
apostrof ‘\a’, ‘\47’, ‘\x27’
bel ‘\a’, ‘\7’, ‘\x7’
cr ‘\r’, ‘\15’, ‘\xd’
Constante reale
-28.89 , 1., .2, 0.3 , -2.5E-12=-2.5x10 -12
Constante sir de caractere
“orice text intre ghilimele”
Variabile

Pentru a putea prelucra datele un program utilizeaza variabilele.

•La un moment dat o variabila retine o data oarecare.


•O variabila este identificabila prin numele ei.
•O variabla retine date doar de un anumit fel.
•Pentru o variabila , in memoria interna se retin unul sau mai
multi octeti consecutivi care memoreaza data respectiva.
•Se pot declara, respectiv initializa mai multe v ariabile de acelasi
tip odata.
EXPRESII

Expresie= succesiune de operatori si


operanzi legati intre ei , dupa reguli
specifice limbajului, in scopul
efectuarii unor operatii (calcule,
atribuirei,…)
OPERATORI C++

Operatori aritmetici

- Unar-actioneaza asupra unui singur operand


+ Unar
+ Binar
- Binar
* Binar
/ Binar
Actioneaza diferit in functie de operanzi:
Ambii intregi=> rezultat intreg (rez. este corect daca
valorile care se impart sunt pozitive)
Daca cel putin un operand este real rezultatul este
real
% Binar-numai pt operanzi de tip intreg
Operatori relationali

<
<=
>
>=
Rezultatul unei operatii logice este 1(true) si 0
(false in caz contrar)
Operanzii pot fi constante, variabile, functii care returneaza
tipuri numerice
Operatori de egalitate

==
!=
Rezultatul unei operatii logice este 1(true) si 0
(false in caz contrar)
Operanzii pot fi constante, variabile, functii care returneaza
tipuri numerice.
Operatori deincrementare si decrementare

++ Incrementare
-- decrementare
Se adauga/ scade 1 din continutul unei variabile
Prefixati -in fata operandului= variabila este
incrementata/decrementata inainte ca valoarea
retinuta de ea sa intre in calcul
Postfixati -dupa operand= variabila este
incrementata/decrementata dupa ce valoarea
retinuta de ea intra in calcul
Operatori logici

! Negare logica
&& Si logic
|| Sau logic
Operatori de atribuire

variabila=expresie

Functionare Se evalueaza expresia


Variabilei i se atribuie valoarea obtinuta
variabila=v1=v2=…=vn=expresie;
Operatorul virgula

Limbajul C++ permite scrierea mai multor expresii separate prin virgula.
Operatorul conditional
exp1?exp2:exp3
Functionare •Se eval exp1
•Daca expresia produce o valoare diferita de 0, se evalueaza
exp2 si exp3 este ignorata (nu se eval)
•Altfel se eval. exp3 si exp2 este ignorata.

Ex: x>=0?x:-x
Operatorul sizeof

Returneaza nr. de octeti fol pt. memorarea unei valori.


sizeof(expresie) sizeof(tip)
Operatorul de conversie explicita
De multe ori se doreste ca unul sau mai multi operanzi sa intre in calcul convertiti
asa cum dorim (nu implicit). Pt. aceasta, inaintea operandului se trece intre
paranteza tipul sau.

S-ar putea să vă placă și