Tipuri de date în C++

Tipul de dată stabilește pentru o variabilă ce fel de valori poate memora, cât spațiu ocupă în memorie și ce operații se pot face cu aceasta.

Atunci când declarăm o variabilă, primul lucru pe care îl precizăm este tipul ei. Alegerea tipului potrivit este importantă: un tip prea „mic” nu poate memora valori mari, iar unul prea „mare” ocupă memorie inutil. La liceu lucrăm cu patru categorii principale: numere întregi, numere reale, caractere și valori logice.

Tipuri întregi

Tipurile întregi memorează numere fără parte zecimală. Cel mai folosit este int, reprezentat pe 4 octeți, care acoperă valori de la 231-2^{31} până la 23112^{31}-1 (aproximativ două miliarde).

Tipurile întregi pot fi declarate cu semn (implicit) sau fără semn. Prefixul unsigned elimină valorile negative și, în schimb, dublează limita superioară pozitivă.

TipDimensiuneInterval de valori
short2 octeți2152151-2^{15} \dots 2^{15}-1
int4 octeți2312311-2^{31} \dots 2^{31}-1
long long8 octeți2632631-2^{63} \dots 2^{63}-1

Versiunile unsigned ale acestor tipuri memorează doar valori pozitive, de la 00 până la aproape dublul limitei cu semn (de exemplu unsigned int ajunge până la 23212^{32}-1). Le folosim când știm sigur că o valoare nu poate fi negativă, precum un număr de elemente.


Publicitate

Tipuri reale

Tipurile reale memorează numere cu parte zecimală. Ele diferă prin precizie, adică prin numărul de zecimale corecte pe care le pot păstra:

TipDimensiunePrecizie aproximativă
float4 octeți~7 zecimale
double8 octeți~15 zecimale
long double10 octeți~18 zecimale

În majoritatea problemelor de liceu, float este alegerea potrivită atunci când avem nevoie de numere zecimale.

Tipul caracter

Tipul char ocupă un singur octet și memorează un caracter. În realitate, el reține un cod numeric (codul ASCII) al caracterului, dar la afișare apare caracterul corespunzător.

char litera = 'A';
cout << litera;       // afiseaza A
cout << (int)litera;  // afiseaza 65, codul numeric al lui 'A'

Tipul char stă, de altfel, la baza șirurilor de caractere, pe care le vom studia separat.

Tipul logic

Tipul bool poate avea doar două valori: true (adevărat, reprezentat prin 11) și false (fals, reprezentat prin 00). Îl folosim pentru date care răspund la o întrebare de tipul „da sau nu”, de exemplu dacă un număr este prim.

Mai există și tipul void, care înseamnă „lipsa unui tip”. Îl vom întâlni la subprograme, pentru a arăta că o funcție nu returnează nicio valoare.

Concluzii

Tipul de dată este prima decizie pe care o luăm pentru fiecare variabilă. Reține cele patru categorii de bază: întregi (int), reale (double), caracter (char) și logic (bool). Odată ce știm ce tipuri avem la dispoziție, putem trece la declararea variabilelor.