Instrucțiunea de atribuire (Operaţia de atribuire)

Sintaxa:

variabilă=expresie;

Mod de executie:

Pas1: se evalueaza expresia din membrul drept

Pas2: rezultatul evaluarii se atribuie variabilei din membrul stang

Operatorul “=” se numeste operator de atribuire.

Observatie: Operaţia de atribuire are sensul de la dreapta la stânga!

ATRIBUIREA NU ESTE EGALITAEA MATEMATICĂ!

Intotdeauna, in partea stanga a unei atribuiri trebuie sa fie o variabila si nu o expresie (variabila are
memorie alocata, expresia NU are)

Atribuirea compusă a op= b reprezintă într-o formă compactă operaţia a = a op b

Atribuirea multiplă este de forma variabilă1 = variabilă2 = … = expresie şi iniţializează variabilele, pornind de la dreapta spre stânga cu valoarea expresiei.

Operatorii de incrementare folosiţi în atribuiri au efecte diferite. Astfel:
a = ++b este echivalentă cu b=b+1; a=b; în timp ce:
a = b++ are ca efect a=b; b=b+1;

Exemple:

x = 4;// variabilei x i se atribuie valoarea 4

y =y+1;//variabila y se incrementează cu 1

z= 24/a + b*b-1; /* se evaluează mai întâi expresia din partea dreaptă şi valoarea rezultată este atribuită variabilei z */

calculul radicalului
#include <cmath>
....
int n, x;
....
x = sqrt(n); //va atribui lui x cel mai mare numar pentru care 
x^2<=n (daca n=28 atunci x=5)
verificarea unui numar daca este patrat perfect
 int (sqrt(n)) == sqrt(n)