Tipul de date reprezintă un concept foarte important în C/C++. Orice dată (constantă sau variabilă) este de un numit tip. Tipul datei precizează ce valori poate avea acea dată și ce operații se pot face cu ea.
În C/C++ tipurile de date sunt:
- Tipuri simple
- Tipuri întregi
- Tipuri reale
- Tipul pointer
- Tipul
bool
- Tipuri derivate
- Tipul tablou
- Tipul structură
- Tipul enumerare
Acest articol se referă numai la tipurile simple.
Tipurile întregi
Tipurile întregi permit memorarea de valori întregi. Tipul de bază este int
. O dată de tip int
poate memora valori întregi cuprinse între -2
31
și 2
31
-1
.
Tipurile întregi diferă prin numărul de octeți necesari pentru memorarea datei, tipul datei (cu semn sau fără semn) și implicit intervalul de valori pe care le pate lua respectiva dată. Tipurile întregi sunt:
Denumire tip | Reprezentare | Interval de valori | - |
---|---|---|---|
int |
4 octeți cu semn | -2 31 ... 2 31 -1 |
-2147483648 ... 2147483647 |
unsigned int |
4 octeți fără semn | 0 ... 2 32 -1 |
0 ... 4294967295 |
long int |
4 octeți cu semn | -2 31 ... 2 31 -1 |
-2147483648 ... 2147483647 |
unsigned long int |
4 octeți fără semn | 0 ... 2 32 -1 |
0 ... 4294967295 |
short int |
2 octeți cu semn | -2 15 ... 2 15 -1 |
-32768 ... 32767 |
unsigned short int |
2 octeți fără semn | 0 ... 2 16 -1 |
0 ... 65535 |
long long int |
8 octeți cu semn | -2 63 ... 2 63 -1 |
|
unsigned long long int |
8 octeți fără semn | 0 ... 2 64 -1 |
|
char |
1 octet cu semn | -2 7 ... 2 7 -1 |
-128 ... 127 |
unsigned char |
1 octet fără semn | 0 ... 2 8 -1 |
0 ... 255 |
Tipurile char
și unsigned char
memorează valori întregi. La afișarea unei date de acest tip nu se va afișa numărul pe care îl memorează ci caracterul care are are codul ASCII egal cu acel număr. Operația de citire a unei date de acest tip este similară.
Tipurile reale – în virgulă mobilă
Memorează valori reale, reprezentate prin mantisă și exponent. În acest mod se pot reprezenta valori foarte mari, dar precizia reprezentării poate fi slabă – numărul de cifre semnificative memorate poate fi mult mai mic decât numărul de cifre din număr.
Tipurile reale sunt:
float
– se reprezinta pe4
octeți;double
– se reprezinta pe8
octeți;long double
– se reprezinta pe10
octeți;
Tipul pointer
O dată de tip pointer memorează o adresă de memorie – de exemplu adresa unei variabile. Informații despre pointeri găsiți în acest articol.
Tipul bool
Anumite operații care se fac cu datele au ca rezultat valori de adevăr: adevărat sau false. În anumite limbaje de programare există un tip de date care memorează exact aceste două valori.
În limbajul C++ există tipul bool
. Acest tip conține două valori: literalii true
și false
. De fapt, acestea sunt redenumiri ale valorilor 1
și 0
.