Nu obții 100 de puncte sau ai nelămuriri în privința problemelor? Scrie-mi pe Instagram.
Ai găsit o greșeală, vrei să raportezi un utilizator sau vrei să comunici altceva? Folosește formularul de contact.
Vrei să ne transmiți o părere despre platformă? Folosește formularul de feedback.
Folosește următoarele shortcuturi pentru a naviga mai ușor pe platformă.
Meniu shortcuturi | ? |
Căutare probleme sau utilizatori | / |
Navigare printre rezultatele căutării | ↑, ↓ |
Meniu de contact și feedback | CTRL + Shift + F |
Ieșire din meniuri | Esc |
Setări editor | CTRL + Shift + S |
Schimbare stil editor | CTRL + Shift + E |
Șabloane de cod | CTRL + Shift + 1/2/3 |
Golire editor | CTRL + Shift + 4 |
Probabil ai învățat despre tipurile de variabile și ai aflat că anumite variabile pot avea valori negative sau pozitive (precum int
, long long
sau char
). Toate aceste tipuri de variabilă au o pereche unsigned
care conține doar valori pozitive.
Pentru a înțelege mai mult despre tipul unsigned
, trebuie să discutăm despre cum se reprezintă variabilele în calculator atunci când le declari.
Fiecare variabilă se reprezintă în calculator în binar, ca o înșiruire de biți. Spre exemplu, tipul int
se reprezintă pe 32
de biți consecutivi, pe când tipul long long
se reprezintă pe 64
de biți, iar tipurile char
și bool
se reprezintă pe doar 8
biți.
Să analizăm tipul int
. Dacă acesta are la dispoziție 32
de biți, atunci în tipul int
putem memora 232
numere diferite (primul bit poate avea valoarea 1
sau 0
, adică sunt 2
variante, al doilea bit la fel, …, astfel că sunt 2 * 2 * 2 * … * 2 = 232
variante).
Pentru că era necesar să existe și numere negative, nu doar pozitive, tipul int
numește primul bit bit de semn, mai precis, acesta determină semnul numărului. Dacă acest bit este 0
, atunci numărul este nenegativ (adică 0
sau mai mare), pe când dacă este 1
, atunci numărul este negativ (mai mic sau egal cu -1
). Prin urmare, int
reține 231
numere negative (de la -231
la -1
) și 231
nenegative (de la 0
la 231 - 1
).
Tipul unsigned int
, sau doar unsigned
, pe de altă parte, nu are un bit de semn, astfel că cei 32
de biți sunt folosiți pentru a reprezenta doar numere pozitive. Prin urmare, tipul unsigned int
reține numere de la 0
la 232 - 1
.
unsigned
unsigned int
Tipul unsigned int
(sau doar unsigned
) reține numere de la 0
la 232 - 1
, adică de la 0
la 4.294.967.295
.
unsigned short
sau unsigned short int
Tipul unsigned short
reține numere de la 0
la 216 - 1
, adică de la 0
la 65.535
.
unsigned long long
Tipul unsigned long long
reține numere de la 0
la 264 - 1
, adică de la 0
la 18.446.744.073.709.551.615
.
unsigned char
Tipul unsigned char
reține valori de la 0
la 255
.