Šajā apmācībā mēs ar piemēru palīdzību uzzināsim par tipa modifikatoriem un to, kā tos izmantot C ++ programmēšanā.
Programmējot C ++, tipa modifikatorus izmanto, lai mainītu pamatdatu tipu nozīmi.
C ++ ir četri tipa modifikatori.
short
long
signed
unsigned
Šeit ir īss kopsavilkums:
Datu tips | Izmērs (baitos) | Nozīme |
---|---|---|
signed int | 4 | lieto skaitļiem (ekvivalents int ) |
unsigned int | 4 | var saglabāt tikai veselus skaitļus, kas nav negatīvi |
short | 2 | izmanto maziem veseliem skaitļiem (diapazons no -32768 līdz 32767 ) |
long | vismaz 4 | lieto lieliem veseliem skaitļiem (ekvivalents long int ) |
unsigned long | 4 | izmanto lieliem pozitīviem skaitļiem vai 0 (ekvivalents unsigned long int ) |
long long | 8 | lieto ļoti lieliem veseliem skaitļiem (ekvivalents long long int ). |
unsigned long long | 8 | izmanto ļoti lieliem pozitīviem skaitļiem vai 0 (ekvivalents unsigned long long int ) |
long double | 8 | izmanto lieliem peldošā komata skaitļiem |
signed char | 1 | lieto rakstzīmēm (garantētais diapazons no -127 līdz 127 ) |
unsigned char | 1 | lieto rakstzīmēm (diapazons no 0 līdz 255 ) |
īsa tipa modifikators
Mēs varam izmantot short
, lai mazajiem veselus skaitļus (diapazonā −32,767
līdz +32,767
).
Piemēram,
// small integer short a = 12345;
Šeit a ir short
vesels skaitļa mainīgais.
Piezīme: short
ir ekvivalents short int
.
garš tipa pārveidotājs
Ja mums jāuzglabā liels vesels skaitlis (diapazonā no -2147483647 līdz 2147483647), mēs varam izmantot tipa norādītāju long
. Piemēram,
// large integer long b = 123456;
Piezīme: long
ir ekvivalents long int
.
Garā tipa modifikatoru var izmantot arī ar double
mainīgajiem.
// large floating-point number long double c = 0.333333333333333333L;
Piezīme. Lai norādītu long double
, mēs izmantojam L
sufiksu. Ja mēs neizmantojam sufiksu L
, tā ir double
vērtība, kas tiek pārveidota long double
(kā rezultātā var tikt zaudēti dati).
ilgi ilgi
long
var izveidot divas reizes, lai izveidotu long long
veidu. Šis tips tiek izmantots pat lielākiem skaitļiem nekā long
. long long
tipa modifikatoru var izmantot tikai ar int
.
Piemēram,
// long long int long long num = 12345678;
parakstīti un neparakstīti modifikatori
Parakstītos mainīgajos var būt gan pozitīvi, gan negatīvi veseli skaitļi, ieskaitot nulli . Piemēram,
// positive valued integer signed int x = 23; // negative valued integer signed int y = -13; // zero-valued integer signed int z = 0;
Šeit,
- x satur pozitīvi novērtētu veselu skaitli
- y satur negatīvu vērtību veselu skaitli
- z satur nulles vērtību veselu skaitli
Piezīme:
- Pēc noklusējuma veseli skaitļi ir
signed
. Līdz ar tosigned
int
mēs varam tieši izmantotint
. signed
un neparakstītu var izmantot tikai ar int un char tipiem.
Ar neparakstīts mainīgie var būt tikai nav negatīvas skaitlim vērtības. Piemēram,
// positive valued integer unsigned int x = 2; unsigned int y = 0;
Šeit,
- x satur pozitīvu vērtību veselu skaitli
- y tur nulli
Parasti int
mainīgais var saglabāt vērtību diapazonu no -2 147 483 648 līdz 2 147 483 647 . Tā kā unsigned in
t mainīgais var saglabāt vērtību diapazonu no 0 līdz 4 294 967 295 .
parakstīts, neparakstīts un vienkāršs raksturs
C ++ ir 3 dažādas char veidi: char
, signed char
un unsigned char
. Praksē pamatā ir tikai 2 veidi: signed char
un unsigned char
.
Tas notiek tāpēc, ka, pat ja char
tas nav tāds pats kā standarta C ++ signed char
vai unsigned char
standartā, dažādi sastādītāji izturas char
kā pret vienu signed char
vai unsigned char
pēc savas izvēles.
Piezīme: Kad mēs tikai izmantot char
vietā signed char
vai unsigned char
, šis veids ir pazīstams kā vienkāršā char .
Kā jūs, iespējams, nojautāt, signed char
var saglabāt gan pozitīvos, gan negatīvos veselos skaitļus, bet unsigned char
var saglabāt tikai pozitīvos veselos skaitļus (ieskaitot 0 ).
Garantēta klāsts skaitlis vērtībām signed char
var uzglabāt ir -127 līdz 127 , bet diapazons unsigned char
ir no 0 līdz 255 .
// plain char char plain_1 = 65; char plain_2 = 0; // plain char with negative value // might cause problems with some compilers char plain_3 = -56; // signed char signed char sin_1 = 12; signed char sin_2 = 0; signed char sin_3 = -12; // unsigned char unsigned char unsin_1 = -85; unsigned char unsin_2 = 0;
Šeit,
- plain_1 satur pozitīvi novērtētu veselu skaitli
- plain_2 satur nulles vērtību veselu skaitli
- sin_1 satur pozitīvi novērtētu veselu skaitli
- sin_2 satur nulles vērtību veselu skaitli
- sin_3 ir vesels skaitlis ar negatīvu vērtību
- unsin_1 satur negatīvu vērtību veselu skaitli
- unsin_2 satur nulles vērtību veselu skaitli
Piezīme: Skaitlisku manipulāciju veikšanai labāk neizmantot vienkāršo simbolu; Tam vietā jāizmanto parakstīta vai neparakstīta char. Parastā rakstzīme jāizmanto tikai rakstzīmju vērtību glabāšanai.