Wednesday, December 02, 2020 06:54

Cuprins >> Introducere > Excepția Overflow

Excepția Overflow

Ar trebui să știți deja de acum că tipul unei variabile definește intervalul de valori pe care le poate stoca aceasta și operațiile pe care software-ul le poate executa asupra lor. Un tip int poate stoca, de exemplu, valori variind de la -2147483648 la 2147483647. Dacă încercați să atribuiți o valoare în afara acestui interval unei variabile de tip int, veți întâmpina ceea ce programatorii numesc excepție overflow (excepție de depășire).

O variabila int stochează 32 de biți. Compilatorul utilizează cel mai semnificativ bit pentru a determina semnul variabilei, 0 fiind pozitiv și 1 negativ. Astfel, programul utilizează 31 de biți pentru a reprezenta valoarea variabilei. Pentru a înțelege de ce are loc excepția overflow, trebuie să înțelegeți reprezentarea binară a valorii variabilei. Să luăm în considerare următoarele valori:

Puteți testa acest lucru folosind următorul program:

Rezultatul va fi aceasta:

excepția overflow

Informații Adiționale

Este posibil să fi observat că am folosit următoarea linie:

Prin urmare, imprimăm o linie la consolă folosind un șir de caractere, despre care vom învăța mai târziu că este o variabilă care poate stoca text. In interiorul ei se pot observa elementele {0} și {1}, iar după aceasta, parametrii negative și negative – 1. În acest caz, {0} va fi înlocuit de primul parametru (negativ) și {1} va fi înlocuit cu al doilea parametru (negativ – 1). Puteți adăuga mai multe elemente / parametrii, respectând același principiu

După cum se poate vedea, adăugând 1 la 2147483647 vom avea ca rezultat un număr negativ, în timp ce scăderea cifrei 1 din -2.147.483.647 va avea ca rezultat o valoare pozitivă. Unul dintre pericolele situațiilor overflow este că s-ar putea de multe ori nu observați eroarea, deoarece compilatorul C# nu vă va avertiza cu privire la excepția de depășire. Cu alte cuvinte, programul continuă să funcționeze, chiar dacă are loc excepția overflow. Acesta este motivul pentru care trebuie să fiți atenți atunci când utilizați un număr mare, pentru că excepțiile de depășire pot fi greu de găsit și depanat.

Conceptele explicate în această lecție sunt prezentate și vizual, ca parte a următorului videoclip:

Comments

comments

Tags: , ,

Leave a Reply



Do NOT follow this link or you will be banned from the site!