Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




INSTRUCTIUNEA EXPRESIE

c


INSTRUCŢIUNEA EXPRESIE

O constructie în care identificatorii, constantele si apelurile de functie sunt legate prin operatori este o instructiune expresie, daca este te 323d39d rmitenta cu punct si virgula.

Format:



expresie;

Exemple:

a = b = 0;

- - n;

gets (t);

sau alt exemplu mai complicat:

r = ((d = b b -4 a c)>0? sqrt (d): sqrt(-d));

La instructiunile expresie cu o constructie mai complicata trebuie mare atentie la regulile de precedenta si asociativitate pentru operatori. Atunci când precedenta nu convine se vor folosi parantezele care schimba ordinea de precedenta. Totusi, când expresiile contin operatori comutativi si asociativi (+, , & , !) ele pot fi rearanjate din punct de vedere a ordinii de evaluare, chiar când se afla între paranteze. De asemenea, ordinea de evaluare poate fi diferita la un calculator fata de alt calculator. Pentru a rezolva aceasta dificultate se desparte expresia în expresii mai mici si se folosesc variabile temporare pentru memorarea rezultatelor intermediare, modalitate prin care se forteaza ordinea de evaluare.



De asemenea, în limbajul C nu se specifica ordinea în care se evalueaza argumentele functiilor.

Exemplu (gresit):

printf ( "%2d %10,8 %10,8f \n", grad , \

(x = (double) grad * PI /180, sin (x), cos (x)));

Aceasta instructiune ar trebui sa afiseze gradul, sinusul si cosinusul, dar ea produce rezultate gresite pe unele calculatoare, întrucât functia cosinus poate fi apelata îniante de atribuirea valorii în radiani lui x, si în aceasta situatie argumentul functiei cos este necunoscut sau are o valoare atribuita anterior.

Corect este :

x = (double) grad PI/180;

printf ( "%2d % 10,8 f %10,8f \n", grad , sin(x), cos (x));

Despre instructiunea expresie mai trebuie spus ca valoarea expresiei este neglijata în cadrul programului, totusi aceasta instructiune este des folosita pentru efectele ei colaterale: atribuiri, apeluri de functii etc.





Document Info


Accesari: 822
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2025 )