Nazwa
Szerokość
Zakres wartości
[Bit]
[Bajt]
char
8
1
-128 do 127
unsigned char
O do 255
signed char
wchar t
16
2
0 do 65535
I short int
-32768 do 32767
signed short int
unsigned short int
int
32
4
-2147483648 do 2147483647
signed int
unsigned int
0 do 4294967295
long
signed long
unsigned long
long long int
64
−9 223 372 036 854 775 808 do
9 223 372 036 854 775 807 0 — +18 446 744 073 709 551 615 (bez znaku)
unsigned long long
0 do 18 446 744 073 709 551 615
float
3.4E-38 do 3.4E+38
double
1.7E-308 do 1.7E+308
long double
80
10
3.4E-4932 do 1.1E+4932
W tej tabeli, typ int ma te same możliwe wartości, co typ long - bo jest zapisywany za pomocą 32 bitów. Jeśli jednak będziesz pracował z kompilatorem 16 bitowym, to najprawdopodobniej typ int będzie zapisywany za pomocą 16 bitów, czyli możliwe do przechowania w nim wartości, będą takie, jak w tej tabeli ma typ short int.
Za lepszą dokładność płaci się dłuższym czasem obliczeń i większą zajętością
pamięci, dlatego zapewnienie programiście kilku typów dla liczb całkowitych (lub zmiennoprzecinkowych) daje mu możliwość wyboru między dokładnością, a szybkością obliczeń i użyciem pamięci.
Jak widać - sposób przechowywania liczby może zależeć od typu kompilatora.
bartchom