Specyfikatory signed, unsigned, short, long - zakres typów liczbowych
Język C/C++ pozwala modyfikować pewne typy danych przy pomocy tak zwanych specyfikatorów: short, long, signed i unsigned.
Specyfikatory short, long
- Sugerują pojemność (dopuszczalny zakres liczb) odpowiednio niższą i wyższą niż typ podstawowy.
- To jaka rzeczywiście będzie pojemność zależy od implementacji
- Język C/C++ wymaga jedynie, by
- short int zajmował minimum 16 bitów
- long int zajmował minimum 32 bity
- pojemność typu ze specyfikatorem short
była nie większa niż typu podstawowego
- pojemność typu ze specyfikatorem long
była nie mniejsza niż typu podstawowego
- Oba mogą być stosowane do typu int,
a tylko drugi do typu double
Specyfikatory signed, unsigned
- Określają czy jeden bit ma być przeznaczony na znak czy też nie. Wpływa to na
pojemność typu.
- Mogą być stosowane do typów char i int.
Rzeczywistą pojemność (w bajtach) dla poszczególnych typów można sprawdzić
wywołując operator sizeof z argumentem
będącym zmienną wybranego typu bądź samym typem.
Przykład - rozmiar i zakres poszczególnych typów