ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ int c: C++ | Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ | Microsoft Docs
-
- Π§ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 2Β ΠΌΠΈΠ½
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Microsoft C++ 32-bit ΠΈ 64-bit ΡΠ°ΡΠΏΠΎΠ·Π½Π°ΡΡ ΡΠΈΠΏΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄Π°Π»Π΅Π΅ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
int
(unsigned int
)__int8
(unsigned __int8
)__int16
(unsigned __int16
)__int32
(unsigned __int32
)__int64
(unsigned __int64
)short
(unsigned short
)long
(unsigned long
)long long
(unsigned long long
)
ΠΡΠ»ΠΈ ΠΈΠΌΡ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ Π΄Π²ΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ (__
), ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ.
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅, Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΠΌΡ ΡΠΈΠΏΠ° | ΠΠ°ΠΉΡΡ | ΠΡΡΠ³ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° | ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ |
---|---|---|---|
int | 4 | signed | ΠΡ -2Β 147Β 483Β 648 Π΄ΠΎ 2Β 147Β 483Β 647 |
unsigned int | 4 | unsigned | ΠΡ 0 Π΄ΠΎ 4 294 967 295 |
__int8 | 1 | char | ΠΡ -128 Π΄ΠΎ 127 |
unsigned __int8 | 1 | unsigned char | ΠΡ 0 Π΄ΠΎ 255 |
__int16 | 2 | short , short int , signed short int | ΠΡ -32Β 768 Π΄ΠΎ 32Β 767 |
unsigned __int16 | 2 | unsigned short , unsigned short int | ΠΡ 0 Π΄ΠΎ 65 535 |
__int32 | 4 | signed , signed int , int | ΠΡ -2Β 147Β 483Β 648 Π΄ΠΎ 2Β 147Β 483Β 647 |
unsigned __int32 | 4 | unsigned , unsigned int | ΠΡ 0 Π΄ΠΎ 4 294 967 295 |
__int64 | 8 | long long , signed long long | ΠΡ -9Β 223Β 372Β 036Β 854Β 775Β 808 Π΄ΠΎ 9Β 223Β 372Β 036Β 854Β 775Β 807 |
unsigned __int64 | 8 | unsigned long long | ΠΡ 0 Π΄ΠΎ 18 446 744 073 709 551 615 |
bool | 1 | Π½Π΅Ρ | false ΠΈΠ»ΠΈ true |
char | 1 | Π½Π΅Ρ | ΠΎΡ-128 Π΄ΠΎ 127 ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΡ 0 Π΄ΠΎ 255 ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ |
signed char | 1 | Π½Π΅Ρ | ΠΡ -128 Π΄ΠΎ 127 |
unsigned char | 1 | Π½Π΅Ρ | ΠΡ 0 Π΄ΠΎ 255 |
short | 2 | short int , signed short int | ΠΡ -32Β 768 Π΄ΠΎ 32Β 767 |
unsigned short | 2 | unsigned short int | ΠΡ 0 Π΄ΠΎ 65 535 |
long | 4 | long int , signed long int | ΠΡ -2Β 147Β 483Β 648 Π΄ΠΎ 2Β 147Β 483Β 647 |
unsigned long | 4 | unsigned long int | ΠΡ 0 Π΄ΠΎ 4 294 967 295 |
long long | 8 | Π½Π΅Ρ (Π½ΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ __int64 ) | ΠΡ -9Β 223Β 372Β 036Β 854Β 775Β 808 Π΄ΠΎ 9Β 223Β 372Β 036Β 854Β 775Β 807 |
unsigned long long | 8 | Π½Π΅Ρ (Π½ΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ unsigned __int64 ) | ΠΡ 0 Π΄ΠΎ 18 446 744 073 709 551 615 |
enum | Π½Π΅ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ | Π½Π΅Ρ | |
float | 4 | Π½Π΅Ρ | 3,4E +/- 38 (7 Π·Π½Π°ΠΊΠΎΠ²) |
double | 8 | Π½Π΅Ρ | 1,7E +/- 308 (15 Π·Π½Π°ΠΊΠΎΠ²) |
long double | ΡΠΎ ΠΆΠ΅, ΡΡΠΎ double | Π½Π΅Ρ | Π’ΠΎ ΠΆΠ΅, ΡΡΠΎ double |
wchar_t | 2 | __wchar_t | ΠΡ 0 Π΄ΠΎ 65 535 |
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ __wchar_t
ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π»ΠΈΠ±ΠΎ ΡΠΈΠΏ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°, Π»ΠΈΠ±ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡΠΎΠ²ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ». Π§ΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΠΏΠ΅ΡΠ΅Π΄ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ ΠΈΠ»ΠΈ ΡΡΡΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠΎΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠ΅ΡΠΈΠΊΡ L
.
signed
ΠΈ unsigned
β ΡΡΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ Π»ΡΠ±ΡΠΌ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌ ΡΠΈΠΏΠΎΠΌ, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ bool
. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ char
, signed char
ΠΈ unsigned char
β ΡΡΠΎ ΡΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΠΈΠΏΠ° Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ
ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΎΠ², ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° ΠΈ ΡΠ°Π±Π»ΠΎΠ½Ρ.
int
Π’ΠΈΠΏΡ ΠΈ unsigned int
ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ΅ΡΡΡΠ΅ Π±Π°ΠΉΡΠ°. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΡΠΉ ΠΊΠΎΠ΄ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°, int
ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ·ΡΠΊΠΎΠ²ΠΎΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
C ΠΈ C++ Π² Visual Studio ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠ°. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π΅ __int8, __int16, __int32, __int64
ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΡΡ
ΡΠΈΡΠ΅Π».
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ± ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ.
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΠΈΠΏΠΎΠ² Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΠ·ΡΠΊΠ° ΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΡΠ»Π°ΠΆΠΊΠΎΠ² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π² ΡΡΠ°ΡΡΡΡ ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΉ C ΠΈ ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΉ C++.
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·Π΄Π΅Π»
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π°
ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ Π² C++: short, int ΠΈ long | Π£ΡΠΎΠΊΠΈ Π‘++
Β Β ΠΠ±Π½ΠΎΠ²Π». 22 ΠΠΏΡ 2021Β Β |Β
ΠΠ° ΡΡΠΎΠΌ ΡΡΠΎΠΊΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ Π² ΡΠ·ΡΠΊΠ΅ Π‘++, ΠΈΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π΄Π΅Π»Π΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ (ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ).
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ β ΡΡΠΎ ΡΠΈΠΏ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° (Π±Π΅Π· Π΄ΡΠΎΠ±Π½ΠΎΠΉ ΡΠ°ΡΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ: -2, -1, 0, 1, 2). Π ΡΠ·ΡΠΊΠ΅ C++ Π΅ΡΡΡ 5 ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ², Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ:
ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ | Π’ΠΈΠΏ | ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ |
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ | char | 1 Π±Π°ΠΉΡ |
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ | short | 2 Π±Π°ΠΉΡΠ° |
int | 2 Π±Π°ΠΉΡΠ° (Π½ΠΎ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ 4 Π±Π°ΠΉΡΠ°) | |
long | 4 Π±Π°ΠΉΡΠ° | |
long long | 8 Π±Π°ΠΉΡ |
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π’ΠΈΠΏ char β ΡΡΠΎ ΠΎΡΠΎΠ±ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ: ΠΎΠ½ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌ, ΡΠ°ΠΊ ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΡΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½ΡΡ . ΠΠ± ΡΡΠΎΠΌ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΠΎΠΊΠΎΠ².
ΠΡΠ½ΠΎΠ²Π½ΡΠΌ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅ΠΌ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ, ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠΌΠΈ Π²ΡΡΠ΅, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ, ΡΠ΅ΠΌ ΠΎΠ½ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ°.
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
char c;
short int si; // Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ
short s; // ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅
int i;
long int li; // Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ
long l; // ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅
long long int lli; // Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ
long long ll; // ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅
char c; short int si; // Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ short s;Β Β Β Β Β Β // ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅ int i; long int li; // Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ long l;Β Β Β Β Β Β // ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅ long long int lli; // Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ long long ll;Β Β Β Β Β Β // ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅ |
Π ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π½ΡΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΡ short int
,Β long int
ΠΈ long long int
ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, ΠΈΡ
ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ (Π±Π΅Π· int
) Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Ρ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. Π ΡΠΎΠΌΡ ΠΆΠ΅ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ int
Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° (Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΏΡΡΠ°ΡΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ).
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈ Π·Π½Π°ΠΊ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
ΠΠ°ΠΊ Π²Ρ ΡΠΆΠ΅ Π·Π½Π°Π΅ΡΠ΅ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΡΠΎΠΊΠ°, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Ρ n-Π½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π±ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ 2nΒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΠΎ ΡΡΠΎ ΡΡΠΎ Π·Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ? ΠΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅. ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ β ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΡ ΠΈ Π΄ΠΎ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ . ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π΄Π²ΡΠΌΡ ΡΠ°ΠΊΡΠΎΡΠ°ΠΌΠΈ: Π΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ (ΠΈΠ·ΠΌΠ΅ΡΡΠ΅ΡΡΡ Π² Π±ΠΈΡΠ°Ρ ) ΠΈ Π΅Ρ Π·Π½Π°ΠΊΠΎΠΌ (ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ signed ΠΈΠ»ΠΈ unsigned).
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ signed (ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ) ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅, ΡΠ°ΠΊ ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°. Π§ΡΠΎΠ±Ρ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΠ°ΠΊ signed, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ signed
:
signed char c;
signed short s;
signed int i;
signed long l;
signed long long ll;
signed char c; signed short s; signed int i; signed long l; signed long long ll; |
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ signed
ΠΏΠΈΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½ΡΡ
.
1-Π±Π°ΠΉΡΠΎΠ²Π°Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ (signed) ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΡ -128 Π΄ΠΎ 127, Ρ.Π΅. Π»ΡΠ±ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ -128 Π΄ΠΎ 127 (Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ) ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡΡΡ Π² Π½Π΅ΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ.
Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΡΠ°Π½Π΅Π΅ Π·Π½Π°ΡΡ, ΡΡΠΎ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π° Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π½Π΅ Π±ΡΠ΄ΡΡ. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΈΠ»ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ΅Π³ΠΎ-Π»ΠΈΠ±ΠΎ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π°Ρ ΡΠΎΡΡ ΠΈΠ»ΠΈ Π²Π΅Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ).
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ unsigned (Π±Π΅Π· Π·Π½Π°ΠΊΠ°) ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°. Π§ΡΠΎΠ±Ρ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΠ°ΠΊ unsigned, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ unsigned
:
unsigned char c;
unsigned short s;
unsigned int i;
unsigned long l;
unsigned long long ll;
unsigned char c; unsigned short s; unsigned int i; unsigned long l; unsigned long long ll; |
1-Π±Π°ΠΉΡΠΎΠ²Π°Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π±Π΅Π· Π·Π½Π°ΠΊΠ° (unsigned) ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΡ 0 Π΄ΠΎ 255.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠ°ΠΊ unsigned ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½Π° Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π° (ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅).
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΠ½ΡΠ»ΠΈ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ signed ΠΈ unsigned, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠ°Π·Π½ΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ :
Π Π°Π·ΠΌΠ΅Ρ/Π’ΠΈΠΏ | ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ |
1 Π±Π°ΠΉΡ signed | ΠΎΡ -128 Π΄ΠΎ 127 |
1 Π±Π°ΠΉΡ unsigned | ΠΎΡ 0 Π΄ΠΎ 255 |
2 Π±Π°ΠΉΡΠ° signed | ΠΎΡ -32 768 Π΄ΠΎ 32 767 |
2 Π±Π°ΠΉΡΠ° unsigned | ΠΎΡ 0 Π΄ΠΎ 65 535 |
4 Π±Π°ΠΉΡΠ° signed | ΠΎΡ -2 147 483 648 Π΄ΠΎ 2 147 483 647 |
4 Π±Π°ΠΉΡΠ° unsigned | ΠΎΡ 0 Π΄ΠΎ 4 294 967 295 |
8 Π±Π°ΠΉΡΠΎΠ² signed | ΠΎΡ -9 223 372 036 854 775 808 Π΄ΠΎ 9 223 372 036 854 775 807 |
8 Π±Π°ΠΉΡΠΎΠ² unsigned | ΠΎΡ 0 Π΄ΠΎ 18 446 744 073 709 551 615 |
ΠΠ»Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΎΠ²: ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ signed Ρ n-Π½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π±ΠΈΡ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ -(2n-1) Π΄ΠΎ 2n-1-1. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ unsigned Ρ n-Π½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π±ΠΈΡ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ 0 Π΄ΠΎ (2n)-1.
ΠΠ»Ρ Π½Π΅ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΎΠ²: ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠ°Π±Π»ΠΈΡΡ π
ΠΠ°ΡΠΈΠ½Π°ΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ signed ΠΈ unsigned ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ. ΠΠΎ Π΅ΡΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠΈΡ. Π§Π΅ΠΌ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΎΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ? ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ! ΠΠΈΠ½ΡΡΠΎΠΌ ΡΠΏΠ΅ΡΠ΅Π΄ΠΈ. ΠΡΠ»ΠΈ ΠΌΠΈΠ½ΡΡΠ° Π½Π΅Ρ, Π·Π½Π°ΡΠΈΡ ΡΠΈΡΠ»ΠΎ β ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ (signed) ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΌΠΈΠ½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ, Ρ.Π΅. ΡΠΈΡΠ»Π° ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ, ΡΠ°ΠΊ ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ. Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ Π±Π΅Π· Π·Π½Π°ΠΊΠ° (unsigned) ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΌΠΈΠ½ΡΡ ΡΠΏΠ΅ΡΠ΅Π΄ΠΈ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ, Ρ.Π΅. ΡΠΈΡΠ»Π° ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ.
Π§ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: signed ΠΈΠ»ΠΈ unsigned?
Π’Π°ΠΊ ΡΡΠΎ ΠΆΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ ΠΌΡ ΠΎΠ±ΡΡΠ²ΠΈΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π±Π΅Π· ΡΠΊΠ°Π·Π°Π½ΠΈΡ signed ΠΈΠ»ΠΈ unsigned?
ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ | Π’ΠΈΠΏ | ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ |
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ | char | signed ΠΈΠ»ΠΈ unsigned (Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² signed) |
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ | short | signed |
int | signed | |
long | signed | |
long long | signed |
ΠΡΠ΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΠΊΡΠΎΠΌΠ΅ char, ΡΠ²Π»ΡΡΡΡΡ signed ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. Π’ΠΈΠΏ char ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΊΠ°ΠΊ signed, ΡΠ°ΠΊ ΠΈ unsigned (Π½ΠΎ, ΠΎΠ±ΡΡΠ½ΠΎ, signed).
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ signed Π½Π΅ ΠΏΠΈΡΠ΅ΡΡΡ (ΠΎΠ½ΠΎ ΠΈ ΡΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ).
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² unsigned, Π΅ΡΠ»ΠΈ Π² ΡΡΠΎΠΌ Π½Π΅Ρ ΠΎΡΠΎΠ±ΠΎΠΉ Π½Π°Π΄ΠΎΠ±Π½ΠΎΡΡΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈΒ unsigned ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΏΠΎ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ΅, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅, Π½Π΅ΠΆΠ΅Π»ΠΈ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ signed.
ΠΡΠ°Π²ΠΈΠ»ΠΎ: ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ signed, Π²ΠΌΠ΅ΡΡΠΎ unsigned.
ΠΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅
ΠΠΎΠΏΡΠΎΡ: Β«Π§ΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ ΠΌΡ ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π²Π½Π΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ ?Β». ΠΡΠ²Π΅Ρ: Β«ΠΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅Β».
ΠΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ (Π°Π½Π³Π». Β«overflowΒ») ΡΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΡΠΈ ΠΏΠΎΡΠ΅ΡΠ΅ Π±ΠΈΡ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π΅ Π±ΡΠ»ΠΎ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΠΈΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ.
ΠΠ° ΡΡΠΎΠΊΠ΅ β28 ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅ Ρ
ΡΠ°Π½ΡΡΡΡ Π² Π±ΠΈΠ½Π°ΡΠ½ΠΎΠΌ (Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ) ΡΠΎΡΠΌΠ°ΡΠ΅ ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π±ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ 2 Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΡ (0
ΠΈΠ»ΠΈ 1
). ΠΠΎΡ ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠΈΡΠ΅Π» ΠΎΡ 0 Π΄ΠΎ 15 Π² Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΉ ΠΈ Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
:
ΠΠ΅ΡΡΡΠΈΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° | ΠΠ²ΠΎΠΈΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° |
0 | 0 |
1 | 1 |
2 | 10 |
3 | 11 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
8 | 1000 |
9 | 1001 |
10 | 1010 |
11 | 1011 |
12 | 1100 |
13 | 1101 |
14 | 1110 |
15 | 1111 |
ΠΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ, ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΈΡΠ»ΠΎ, ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π΅ΠΌΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π±ΠΈΡ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π½Π°ΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅ΡΡ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ, ΡΠΎ Π½Π° Π½ΠΈΡ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Ρ ΡΠ°Π½ΠΈΡΡ.
ΠΡΠΈΠΌΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ unsigned, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· 4-Ρ Π±ΠΈΡ. ΠΡΠ±ΠΎΠ΅ ΠΈΠ· Π΄Π²ΠΎΠΈΡΠ½ΡΡ ΡΠΈΡΠ΅Π», ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π²ΡΡΠ΅, ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡΡ Π²Π½ΡΡΡΠΈ ΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.
Β«ΠΠΎ ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ ΠΌΡ ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ 4-Ρ Π±ΠΈΡ?Β». ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ! ΠΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. ΠΠ°ΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π±ΡΠ΄Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ 4 Π½Π°ΠΈΠΌΠ΅Π½Π΅Π΅ Π·Π½Π°ΡΠΈΠΌΡΡ (ΡΠ΅, ΡΡΠΎ ΡΠΏΡΠ°Π²Π°) Π±ΠΈΡΠ°, Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ β ΠΏΠΎΡΠ΅ΡΡΡΡΡΡ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΌΡ ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΡΠΈΡΠ»ΠΎ 21 Π² Π½Π°ΡΡ 4-Π±ΠΈΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ:
ΠΠ΅ΡΡΡΠΈΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° | ΠΠ²ΠΎΠΈΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° |
21 | 10101 |
Π§ΠΈΡΠ»ΠΎ 21 Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 5 Π±ΠΈΡ (10101). 4 Π±ΠΈΡΠ° ΡΠΏΡΠ°Π²Π° (0101) ΠΏΠΎΠΌΠ΅ΡΡΡΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, Π° ΠΊΡΠ°ΠΉΠ½ΠΈΠΉ Π»Π΅Π²ΡΠΉ Π±ΠΈΡ (1) ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΠ΅ΡΡΠ΅ΡΡΡ. Π’.Π΅. Π½Π°ΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ 0101, ΡΡΠΎ ΡΠ°Π²Π½ΠΎ 101 (Π½ΡΠ»Ρ ΡΠΏΠ΅ΡΠ΅Π΄ΠΈ Π½Π΅ ΡΡΠΈΡΠ°Π΅ΡΡΡ), Π° ΡΡΠΎ ΡΠΆΠ΅ ΡΠΈΡΠ»ΠΎ 5, Π° Π½Π΅ 21.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π ΠΊΠΎΠ½Π²Π΅ΡΡΠ°ΡΠΈΠΈ ΡΠΈΡΠ΅Π» ΠΈΠ· Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π² Π΄Π΅ΡΡΡΠΈΡΠ½ΡΡ ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΡΠΎΠΊ, Π³Π΄Π΅ ΠΌΡ Π²ΡΡ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ.
Π’Π΅ΠΏΠ΅ΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ Π² ΠΊΠΎΠ΄Π΅ (ΡΠΈΠΏ short Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 16 Π±ΠΈΡ):
#include <iostream>
int main()
{
unsigned short x = 65535; // Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ Ρ
ΡΠ°Π½ΠΈΡΡ 16-Π±ΠΈΡΠ½Π°Ρ unsigned ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ
std::cout << «x was: » << x << std::endl;
x = x + 1; // 65536 — ΡΡΠΎ ΡΠΈΡΠ»ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π½Π°Ρ x Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Ρ
ΡΠ°Π½ΠΈΡΡ 17 Π±ΠΈΡ
std::cout << «x is now: » << x << std::endl;
return 0;
}
#include <iostream> int main() { Β Β Β Β unsigned short x = 65535; // Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ 16-Π±ΠΈΡΠ½Π°Ρ unsigned ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Β Β Β Β std::cout << «x was: » << x << std::endl; Β Β Β Β x = x + 1; // 65536 — ΡΡΠΎ ΡΠΈΡΠ»ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π½Π°Ρ x Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ 17 Π±ΠΈΡ Β Β Β Β std::cout << «x is now: » << x << std::endl; Β Β Β Β return 0; } |
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
x was: 65535
x is now: 0
Π§ΡΠΎ ΡΠ»ΡΡΠΈΠ»ΠΎΡΡ? ΠΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ ΠΏΠΎΠΏΡΡΠ°Π»ΠΈΡΡ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ x
Β Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΠΎΠ½Π° ΡΠΏΠΎΡΠΎΠ±Π½Π° Π² ΡΠ΅Π±Π΅ Ρ
ΡΠ°Π½ΠΈΡΡ.
ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Ρ ΠΎΡΠ΅Ρ Π·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅: Π§ΠΈΡΠ»ΠΎ 65 535 Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ ΠΊΠ°ΠΊ 1111 1111 1111 1111. 65 535 β ΡΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ 2-Π±Π°ΠΉΡΠΎΠ²Π°Ρ (16 Π±ΠΈΡ) ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π±Π΅Π· Π·Π½Π°ΠΊΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠΈΡΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²ΡΠ΅ 16 Π±ΠΈΡ. ΠΠΎΠ³Π΄Π° ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ 1, ΡΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠΈΡΠ»ΠΎ 65 536. Π§ΠΈΡΠ»ΠΎ 65 536 ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠ°ΠΊ 1 0000 0000 0000 0000, ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 17 Π±ΠΈΡ! Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΠ°ΠΌΡΠΉ Π³Π»Π°Π²Π½ΡΠΉ Π±ΠΈΡ (ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ 1) ΡΠ΅ΡΡΠ΅ΡΡΡ, Π° Π²ΡΠ΅ 16 Π±ΠΈΡ ΡΠΏΡΠ°Π²Π° β ΠΎΡΡΠ°ΡΡΡΡ. ΠΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ 0000 0000 0000 0000 ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΌΡ 0, ΡΡΠΎ ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°ΡΠΈΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ.
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π² ΡΠΈΡΠ»ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ:
#include <iostream>
int main()
{
unsigned short x = 0; // Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ 2-Π±Π°ΠΉΡΠΎΠ²Π°Ρ unsigned ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΌΠΎΠΆΠ΅Ρ Ρ
ΡΠ°Π½ΠΈΡΡ
std::cout << «x was: » << x << std::endl;
x = x — 1; // ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅!
std::cout << «x is now: » << x << std::endl;
return 0;
}
#include <iostream> int main() { Β Β Β Β unsigned short x = 0; // Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ 2-Π±Π°ΠΉΡΠΎΠ²Π°Ρ unsigned ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Β Β Β Β std::cout << «x was: » << x << std::endl; Β Β Β Β x = x — 1; // ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅! Β Β Β Β std::cout << «x is now: » << x << std::endl; Β Β Β Β return 0; } |
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
x was: 0
x is now: 65535
ΠΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΏΠΎΡΠ΅ΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π° ΡΡΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΠ΅ΡΡΡ. ΠΡΠ»ΠΈ Π΅ΡΡΡ Ρ ΠΎΡΡ ΠΌΠ°Π»Π΅ΠΉΡΠ΅Π΅ ΠΏΠΎΠ΄ΠΎΠ·ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΈΡΠ»ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π²Π½Π΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΠ±ΠΎΠ»ΡΡΠ΅!
ΠΡΠ°Π²ΠΈΠ»ΠΎ: ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°ΠΉΡΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² Π²Π°ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ !
ΠΠ΅Π»Π΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
Π ΡΠ·ΡΠΊΠ΅ C++ ΠΏΡΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π΄Π²ΡΡ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π», Π³Π΄Π΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΡΡΠ³ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, Π²ΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎ:
#include <iostream>
int main()
{
std::cout << 20 / 4 << std::endl;
return 0;
}
#include <iostream> int main() { Β Β Β Β std::cout << 20 / 4 << std::endl; Β Β Β Β return 0; } |
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
5
ΠΠΎ ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π²ΡΡ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ Π΄ΡΠΎΠ±Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ? ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
#include <iostream>
int main()
{
std::cout << 8 / 5 << std::endl;
return 0;
}
#include <iostream> int main() { Β Β Β Β std::cout << 8 / 5 << std::endl; Β Β Β Β return 0; } |
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
1
Π ΡΠ·ΡΠΊΠ΅ C++ ΠΏΡΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ Π΄ΡΡΠ³ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ. Π ΡΠ°ΠΊΠΈΠ΅ ΡΠΈΡΠ»Π° Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π΄ΡΠΎΠ±Ρ (ΠΎΠ½Π° ΠΏΡΠΎΡΡΠΎ ΠΎΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΡΡΡ, Π½Π΅ ΠΎΠΊΡΡΠ³Π»ΡΠ΅ΡΡΡ!).
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎ Π²ΡΡΠ΅ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ: 8 / 5 = 1.6
. ΠΠΎ ΠΊΠ°ΠΊ ΠΌΡ ΡΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, ΠΏΡΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠ΅Π»ΡΡ
ΡΠΈΡΠ΅Π» ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΡΡΠ³ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΄ΡΠΎΠ±Π½Π°Ρ ΡΠ°ΡΡΡ (0.6
) Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΡΡΡ ΠΈ ΠΎΡΡΠ°Π΅ΡΡΡ 1
.
ΠΡΠ°Π²ΠΈΠ»ΠΎ: ΠΡΠ΄ΡΡΠ΅ ΠΎΡΡΠΎΡΠΎΠΆΠ½Ρ ΠΏΡΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π», ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π»ΡΠ±Π°Ρ Π΄ΡΠΎΠ±Π½Π°Ρ ΡΠ°ΡΡΡ Π²ΡΠ΅Π³Π΄Π° ΠΎΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΡΡΡ.
ΠΡΠ΅Π½ΠΈΡΡ ΡΡΠ°ΡΡΡ:
ΠΠ°Π³ΡΡΠ·ΠΊΠ°…
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π² ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡ :
C: ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ — Linux FAQ
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ Π½Π° ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠ°ΠΌΡΡΠΈ, Ρ ΡΠ°Π½ΡΡΠΈΠ΅ ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π ΡΠ·ΡΠΊΠ΅ C ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅ΡΡ ΡΠΈΠΏ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΉ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , Ρ ΡΠ°Π½ΡΡΠΈΡ ΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ Π²ΡΡΡΠ½ΠΈΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΠΌΡΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΉ.
Π―Π·ΡΠΊ C ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ , ΡΠ°ΠΊΠΈΡ , ΠΊΠ°ΠΊ char, int, float ΠΈ double. Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΠΌΡΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ»ΠΎΠ² signed, unsigned ΠΈ long, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Ρ ΡΠ°Π½ΠΈΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π±ΠΎΠ»ΡΡΠΈΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ².
Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° int ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π² ΡΠ΅ΡΡΡΠ΅Ρ Π±Π°ΠΉΡΠ°Ρ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠΈ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠΈ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ ΡΠΈΠΏΠ° float ΠΈΠ»ΠΈ double, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΎ Π² ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅.
int count = 8;
Π’Π°ΠΊΠΆΠ΅ Π² ΡΠ°ΡΠΏΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΈΠΌΠ΅ΡΡΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ (unsigned int), ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ (short int),Β Π΄Π»ΠΈΠ½Π½ΡΠ΅ (long int) ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π΄Π»ΠΈΠ½Π½ΡΠ΅ (long long int) ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ:
- ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° short int ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ -32768 Π΄ΠΎ 32768 ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π° Π±Π°ΠΉΡΠ° ΠΏΠ°ΠΌΡΡΠΈ.
- ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° unsigned short int ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ 0 Π΄ΠΎ 65535 Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π° Π±Π°ΠΉΡΠ° ΠΏΠ°ΠΌΡΡΠΈ.
- ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° int ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ -2147483648 Π΄ΠΎΒ 2147483648 ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΡΠ΅ΡΡΡΠ΅ Π±Π°ΠΉΡΠ° ΠΏΠ°ΠΌΡΡΠΈ.
- ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° unsigned int ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ 0 Π΄ΠΎ 4294967295 ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΡΠ΅ΡΡΡΠ΅ Π±Π°ΠΉΡΠ° ΠΏΠ°ΠΌΡΡΠΈ.
- ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° long int ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ -2147483648 Π΄ΠΎΒ 2147483648 ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΡΠ΅ΡΡΡΠ΅ Π±Π°ΠΉΡΠ° ΠΏΠ°ΠΌΡΡΠΈ Π½Π° 32-Π±ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ -9223372036854775807 Π΄ΠΎ 9223372036854775807 ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π²ΠΎΡΠ΅ΠΌΡ Π±Π°ΠΉΡ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° 64-Π±ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ .
- ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° unsigned long int ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ 0 Π΄ΠΎ 4294967295 ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΡΠ΅ΡΡΡΠ΅ Π±Π°ΠΉΡΠ° ΠΏΠ°ΠΌΡΡΠΈ Π½Π° 32-Π±ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ 0 Π΄ΠΎ 18446744073709551615 ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π²ΠΎΡΠ΅ΠΌΡ Π±Π°ΠΉΡ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° 64-Π±ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ .
- ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° long long int ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ -9223372036854775807 Π΄ΠΎ 9223372036854775807 ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π²ΠΎΡΠ΅ΠΌΡ Π±Π°ΠΉΡ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° Π»ΡΠ±ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ .
- ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° unsigned long long int ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ 0 Π΄ΠΎ 18446744073709551615 ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π²ΠΎΡΠ΅ΠΌΡ Π±Π°ΠΉΡ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° Π»ΡΠ±ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ .
ΠΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ int ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡΡΡ Π² ΡΠ»ΡΡΠ°Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ long ΠΈ short. ΠΠΎΠΌΠΈΠΌΠΎ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ (unsigned), ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π·Π½Π°ΠΊΠΎΠ²ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ (signed), ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π° Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΡΠ²Π»ΡΡΡΡΡ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΡΠΌΠΈ:
long lightspeed = 299792458;
long int lightspeed = 299792458;
signed long lightspeed = 299792458;
signed long int lightspeed = 299792458;
Π§ΠΈΡΠ»Π° Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ ΡΠΈΠΏΠ° float ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π²Π΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠΈΡΠ»Π° Π² ΡΠ΅ΡΡΡΠ΅Ρ Π±Π°ΠΉΡΠ°Ρ ΠΏΠ°ΠΌΡΡΠΈ.
float pi = 3.14;
ΠΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΠΏΠ° float, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° double ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π²Π΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠΈΡΠ»Π°, Π½ΠΎ ΡΡΠΈ ΡΠΈΡΠ»Π° ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π΄Π²ΠΎΠΉΠ½ΡΡ ΡΠΎΡΠ½ΠΎΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ Π½ΠΈΡ ΠΎΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π²ΠΎΡΠ΅ΠΌΡ Π±Π°ΠΉΡ ΠΏΠ°ΠΌΡΡΠΈ.
double score = 53.92819384;
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ long double Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½Π½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ.
Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° char ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΌΠ²ΠΎΠ» Π² ΠΎΠ΄Π½ΠΎΠΌ Π±Π°ΠΉΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ. Π₯ΠΎΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ», Π² ΠΏΠ°ΠΌΡΡΠΈ Ρ ΡΠ°Π½ΠΈΡΡΡ Π΅Π³ΠΎ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅.
char initial = 'd';
ΠΠΎΠΌΠΈΠΌΠΎ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π·Π½Π°ΠΊΠΎΠ²Π°Ρ (signed char) ΠΈ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Π°Ρ (unsigned char) ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅.
Π‘ΡΡΠΎΠΊΠΈ
Π ΡΠ·ΡΠΊΠ΅ C Π΄Π»Ρ ΡΡΡΠΎΠΊ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ
, ΠΊΠ°ΠΊ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Π² ΡΠ°ΠΊΠΈΡ
ΡΠ·ΡΠΊΠ°Ρ
, ΠΊΠ°ΠΊ Python. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΡΡΡΠΎΠΊΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΡΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Β«Π‘ΡΡΠΎΠΊΠΈΒ».
ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ ΡΠ·ΡΠΊΠ° C99 Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΠΏΠ° bool (ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ true ΠΈ false), ΠΎΠ΄Π½Π°ΠΊΠΎ Π² ΡΠ»ΡΡΠ°Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΡΠ°ΡΠ΅Π²ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Π±ΡΠ΄ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ.
ΠΠΎΠ²ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ ΠΊΠ°ΠΊ _Bool, Ρ ΠΎΡΡ Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ <stdbool.h> ΡΠΈΠΏ _Bool Π±ΡΠ΄Π΅Ρ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ ΡΠΈΠΏΡ bool.
#include <stdio.h>
#include <stdbool.h>
Β
int main()
{
Β Β bool run = false;
Β
Β Β if (run == true)
- Β Β Β Β printf("Π Π°Π±ΠΎΡΠ°Π΅Ρ...\n");
Β Β else
- Β Β Β Β printf("ΠΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. \n");
Β
Β Β return 0;
}
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΏΠ° bool ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡΡΡ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ -std=c99.
ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
ΠΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π° Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠ±Π°Ρ ΠΏΠΎΠΏΡΡΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΅Π΅ ΠΈΠ·Π²Π½Π΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅. Π’Π°ΠΊΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ.
ΠΠ»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ Π²Π½Π΅ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΠ· Π»ΡΠ±ΠΎΠ³ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ ΠΊΠ°ΠΊ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅. Π’Π°ΠΊΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠΎΡΠ»Π΅ Π²ΡΡ ΠΎΠ΄Π° ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ.
Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»ΠΎΠ²Π° static, ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΠ΅Π³ΠΎΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ ΡΠΈΠΏΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.
static int age;
ΠΡΠΈΠΌΠ΅Ρ:
#include <stdio.h>
Β
{
Β Β int var = 1;
Β Β static int svar = 1;
Β
- Β Β printf("var = %d, static = %d\n", var, svar);
Β Β var++;
Β Β svar++;
}
Β
int main()
{
Β Β int i;
Β Β for (i = 0; i < 5; i++)
Β Β {
Β Β }
Β
Β Β return 0;
}
ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΡΠ°ΠΉΠ» ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π°
Π―Π·ΡΠΊ C ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π°Π±ΠΎΡΠ° Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠΌΠ΅Π½ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ . ΠΡΠΈΠΌΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ:
auto
break
case
char
continue
default
do
double
else
enum
extern
float
for
goto
if
int
long
register
return
short
sizeof
static
struct
switch
typedef
union
unsigned
void
while
ΠΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ Π±ΡΠΊΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΈΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΈΡΡΡ. 31, ΡΡΠΎ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΡ β2 147 483 648 Π΄ΠΎ 2 147 483 647 ΠΈΠ»ΠΈ ΠΎΠΊΠΎΠ»ΠΎ -2 ΠΌΠ»ΡΠ΄ Π΄ΠΎ +2 ΠΌΠ»ΡΠ΄. ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, Π½ΠΎ ΠΎΠ½ ΡΠ΄Π²ΠΈΠ½ΡΡ Π½Π° ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ.
25
biscuit
29 ΠΠ²Π³ 2019 Π² 08:21
5 ΠΎΡΠ²Π΅ΡΠΎΠ²
ΠΡΡΡΠΈΠΉ ΠΎΡΠ²Π΅Ρ
ΠΏ
3
000
001
010
011
100
101
110
111
ΠΏ
ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΠΎΡ 0 Π΄ΠΎ 2 n -1 Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ
(ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ (2 n -1) — (0) + 1 = 2 ΠΏ ΡΠ°Π·Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ).ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ,
000 0 001 1 010 2 011 3 100 4 101 5 110 6 111 7
ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΠΎΡ -2 n-1 Π΄ΠΎ 2 n-1 -1 Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ
(ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ (2 n-1 ) > -1) — (-2 n-1 ) + 1 = 2 n ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ).ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ,
100 -4 101 -3 110 -2 111 -1 000 0 001 1 010 2 011 3
[ 1 ]
- ΠΠ° ΡΠ²ΠΎΠ΅ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π΅ΡΡΡ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° Π·Π°ΠΏΠΈΡΠΈ Π½ΡΠ»Ρ (0000. ..0000 2 ΠΈ 1000 … 0000 2 ), ΠΏΠΎΡΡΠΎΠΌΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΡΠ΅Π³ΠΎ ΠΎΡ -2 n-1 -1 Π΄ΠΎ 2 ΠΏ — 1 -1 . Π― Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Π²ΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ ΡΠ²Π»ΡΡΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΎ Π΄Π²ΡΡ .
23
ikegami
24 Π€Π΅Π² 2020 Π² 13:47
ΠΠ»Ρ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π±Π΅Π· Π·Π½Π°ΠΊΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ -1 ΡΠ°Π²Π½ΠΎ Π²Π½Π΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ -1 unsigned int
, ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ° C.
ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ Π² ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ 6.3.1.3p2 Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° ΡΡΠ°Π½Π΄Π°ΡΡ C:
Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π½ΠΎΠ²ΡΠΉ ΡΠΈΠΏ Π±Π΅Π· Π·Π½Π°ΠΊΠ°, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅ΡΡΡ ΠΏΡΡΠ΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π²ΡΡΠΈΡΠ°Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ Π² Π½ΠΎΠ²ΠΎΠΌ ΡΠΈΠΏΠ΅ ΠΏΠΎΠΊΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. 60
…
60) ΠΡΠ°Π²ΠΈΠ»Π° ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π° Π½Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΠΊΠ°ΠΊ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΡΡΠΎ unsigned int
ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΡ 0 Π΄ΠΎ 4 294 967 295, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ -1 ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ ΠΏΡΡΠ΅ΠΌ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ -1 + 4 294 967 296 = 4 294 967 295. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² Π΄Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅. Π’ΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠ»ΠΈΠΌΠ΅Π½ΡΠ° Π΄Π²ΠΎΠΈΡ
, ΠΊΠΎΠΌΠΏΠ»ΠΈΠΌΠ΅Π½ΡΠ° ΡΠ²ΠΎΠΈΡ
ΠΈΠ»ΠΈ Π·Π½Π°ΠΊΠ° ΠΈ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ -1.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ 4-Π±ΠΈΡΠ½ΡΠΉ ΡΠΈΠΏ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°, ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ -1 Π² ΡΠΈΠΏ Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 15. ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΠΈΡ ΡΠΈΡΠ΅Π» Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
sign-and magnitude ones' complement two's complement
-1 (signed) 1001 1110 1111
15 (unsigned) 1111 1111 1111
Π₯ΠΎΡΡ Π² ΡΠ»ΡΡΠ°Π΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄ΠΎ Π΄Π²ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΡΠ°Π΅ΡΡΡ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ, Π² Π΄ΡΡΠ³ΠΈΡ Π΄Π²ΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΎΠ½ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ. ΠΠ»Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ -1 ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ Π΄Π»Ρ 14, Π° Π΄Π»Ρ Π·Π½Π°ΠΊΠ° ΠΈ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ -1 ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ Π΄Π»Ρ 9.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠΎ, ΡΡΠΎ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΡ ΠΎΠΏΠΈΡΠ°Π»ΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊ Π΄Π²ΡΠΌ, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ (ΡΠΎ Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΎΡΠΌΡΡΠ»ΠΈΠ²Π°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ -1 ΠΊΠ°ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ°), ΠΎΠ΄Π½Π°ΠΊΠΎ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠ·ΡΠΊΠ° C ΠΊΠ°ΠΊ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ ΡΠΎ, ΡΡΠΎ Ρ ΠΎΠΏΠΈΡΠ°Π», ΡΠ²Π»ΡΠ΅ΡΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ.
3
dbush
29 ΠΠ²Π³ 2019 Π² 18:53
Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΡ @ Yunnosch ΠΎ ΡΠΈΡΠ»Π°Ρ Π±Π΅Π· Π·Π½Π°ΠΊΠ°, ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Β«Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ Β» Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π²ΠΎΠΈΡΠ½ΡΡ ΡΠΈΡΠ΅Π» ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ. Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Π΄Π²ΡΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°ΡΠΈΠΌΡΠΉ Π±ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Β«Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ Π±ΠΈΡΠ°Β», Π° Π±ΠΈΡΡ ΡΠ²Π»ΡΡΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΡΠ»Π° +1. Π’Π°ΠΊ, Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° Ρ 3 Π±ΠΈΡΠ°ΠΌΠΈ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΡΠ°Π²Π΅Π½ ΠΎΡ 0 Π΄ΠΎ 7, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΡ -4 Π΄ΠΎ 3:
100 : -4
101 : -3
110 : -2
111 : -1
000 : 0
001 : 1
010 : 2
011 : 3
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π΄Π»Ρ ΡΠΈΡΠ΅Π» ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ
ΡΠΈΡΠ΅Π» Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΠΈΡΠ΅Π». ΠΡΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ Π² ΡΠ΅ΠΎΡΠΈΠΈ ΡΠΈΡΠ΅Π» 0
Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌ, Π½ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ, Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ 0
Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π»ΠΈΠ±ΠΎ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ, Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°ΡΠΈΠΌΡΠΉ Π±ΠΈΡ, 0
ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΠΈΡΠ΅Π», ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΡΡΠ°Π΅ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ ΠΎΠ΄Π½ΠΎ ΠΌΠ΅Π½Π΅Π΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ.
5
daShier
29 ΠΠ²Π³ 2019 Π² 06:08
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Ρ 2 Π±ΠΈΡΠ°ΠΌΠΈ:
00 : 0
01 : 1
10 : 2
11 : 3
ΠΡ
4, 2 Π² ΡΡΠ΅ΠΏΠ΅Π½ΠΈ 2. 2-1
ΠΈΠ»ΠΈ 2 2 -1
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ, ΠΈ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π²Π΄Π²ΠΎΠ΅ Π±ΠΎΠ»ΡΡΠ΅, Π΄ΠΎΠ±Π°Π²ΠΈΠ²
100 : 4
101 : 5
110 : 6
111 : 7
ΠΡΠ΅Π³ΠΎ 8, Π½ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π΅ 7.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Β«-1Β» ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π²ΡΠ΅Π³Π΄Π° ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΈΠ· 2 n ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ 0,
2-Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ 1, 3-Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ 2.
Π ΠΊΠΎΠ½ΡΠ΅ (2 n ) -ΠΉ ΠΎΠ΄ΠΈΠ½ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ 2 n , ΠΎΠ½ ΡΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ 2 n -1.
47
Yunnosch
29 ΠΠ²Π³ 2019 Π² 06:30
ΠΠ΄Π΅ Π²Ρ Π½Π°ΡΠ»ΠΈ ΡΡΠΎΡ Π½Π΅Π²Π΅ΡΠ½ΡΠΉ Π°Π±Π·Π°Ρ? ΠΠΎΡ
ΠΎΠΆΠ΅, ΡΡΠΎ ΡΡΠΎ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ 2, Π½ΠΎ -1
Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π½Π΅ Π² ΡΠΎΠΌ ΠΌΠ΅ΡΡΠ΅.
ΠΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ C, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ
ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Π·Π½Π°ΠΊΠΎΠΌ / Π²Π΅Π»ΠΈΡΠΈΠ½ΠΎΠΉ, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠΈΠΌΠΌΠ΅ΡΡΠΈΡΠ΅Π½ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½ΡΠ»Ρ (Ρ 2-Π±ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ 0
, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ).n.
ΠΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±ΠΈΡ Π·Π½Π°ΠΊΠ°, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ : -INT_MIN
ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ (Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅), ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ ΠΊΠ°ΠΊ {{X1 } } ; ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°. ΠΠ»ΠΈ Ρ ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠΎΠΉ, -INT_MIN = INT_MIN
. ΠΡΠΎ Β«Π°Π½ΠΎΠΌΠ°Π»ΠΈΡ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ° 2Β». https://en.wikipedia.org/wiki/Two%27s_complement#Most_negative_number
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Ρ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, unsigned abs = i >= 0 ? i : -(unsigned)i;
(ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² unsigned
Π² C ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅ΡΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Π΄ΠΎ ΡΠ΅Ρ
ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΎ Π½Π΅ ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅. Π C ΡΡΠΎ Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ-ΡΠ΅Π»ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ; Π²Π°ΠΆΠ½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ value . Π’Π°ΠΊ ΡΡΠΎ (uint8_t)-1
Π²ΡΠ΅Π³Π΄Π° 255. ΠΠ»Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ 2 ΠΎΠ½ ΠΏΡΠΎΡΡΠΎ ΠΊΠΎΠΏΠΈΡΡΠ΅Ρ Π±ΠΈΡΠΎΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½. ΠΠ»Ρ Π·Π½Π°ΠΊΠ° / Π²Π΅Π»ΠΈΡΠΈΠ½Ρ ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ C Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΠ»Π° Π±Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΡ Π΄Π»Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΠΊ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Ρ ΡΠ΄Π΅Π»Π°Π» ΡΡΠΎ Π΄ΠΎ ΠΎΡΡΠΈΡΠ°Π½ΠΈΡ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ 0 - i
Ρ ΠΎΠ±ΡΡΠ½ΡΠΌ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΌ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΎΠΌ.)
2
Peter Cordes
30 ΠΠ²Π³ 2019 Π² 00:09
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ — Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ, ΠΊΠΎΡΡΠ΅ΠΆΠΈ, ΡΠ°Π±Π»ΠΎΠ½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
[ΠΠΠ_ΠΠΠ£ΠΠ] ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅. ΠΡ Π½Π°ΡΠΈΠ½Π°Π΅ΠΌ Π±Π»ΠΎΠΊ, ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π½ΡΠΉ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΡΠ·ΡΠΊΠ° C++. ΠΡ ΡΠΆΠ΅ Π·Π½Π°Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ β ΡΡΠΎ ΡΠΈΠΏ int, ΠΈ ΠΌΡ ΠΈΠΌ Π²Π΅Π·Π΄Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ. ΠΠΎ Π²ΡΠ΅-ΡΠ°ΠΊΠΈ ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠΎΡΡΠΎ ΡΠ°ΠΊ ΡΠ°Π΄ΠΈ ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ ΡΠ·ΡΠΊΠ° C++ β ΠΌΡ Π½Π°ΡΠ½Π΅ΠΌ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠΌΠ½ΠΈΠΌ Π·Π°Π΄Π°ΡΡ Β«Π‘ΡΠ΅Π΄Π½ΡΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ°Β» ΠΈΠ· ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΊΡΡΡΠ°. Π§ΡΠΎ ΡΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ? ΠΠ°ΠΌ Π±ΡΠ» Π΄Π°Π½ Π½Π°Π±ΠΎΡ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠΉ Π·Π° ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠΎΠΉ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, Π² Π²ΠΈΠ΄Π΅ Π²Π΅ΠΊΡΠΎΡΠ° (Π½Π°Π·ΠΎΠ²Π΅ΠΌ Π΅Π³ΠΎ t), ΠΈ Ρ Π½Π°Ρ Π±ΡΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 8, 7 ΠΈ 3. ΠΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π½Π°ΠΉΡΠΈ ΡΡΠ΅Π΄Π½Π΅Π΅ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ Π·Π° Π²ΡΠ΅ Π΄Π½ΠΈ ΠΈ Π·Π°ΡΠ΅ΠΌ Π²ΡΠ²Π΅ΡΡΠΈ Π½ΠΎΠΌΠ΅ΡΠ° Π΄Π½Π΅ΠΉ, Π² ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ Π±ΡΠ»ΠΎ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΡΡΠ΅Π΄Π½Π΅Π΅ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠΌΠ΅ΡΡ Π²ΡΡΠΈΡΠ»ΡΡΡ ΡΡΠ΅Π΄Π½Π΅Π΅ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅. ΠΠ°ΠΊ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ? ΠΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ, Π²ΠΎΡ, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΈΠΌΠ΅Ρ Π΄Π°Π½Π½ΡΠΉ Π²Π΅ΠΊΡΠΎΡ Ρ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΡΠΌΠΈ… ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΌΡ Π΅Π³ΠΎ ΡΠΈΡΠ°Π»ΠΈ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, Π·Π΄Π΅ΡΡ Ρ ΠΌΠ΅Π½Ρ ΠΎΠ½ Π·Π°Π΄Π°Π½ ΠΏΡΠΎΡΡΠΎ ΡΠ²Π½ΠΎ. ΠΠ°Π΄ΠΎ Π±ΡΠ»ΠΎ Π·Π°Π²Π΅ΡΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Ρ ΡΡΠΌΠΌΠΎΠΉ ΠΈ Π·Π°ΡΠ΅ΠΌ ΡΠΈΠΊΠ»ΠΎΠΌ for ΠΏΡΠΎΠΈΡΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΏΠΎ Π²Π΅ΠΊΡΠΎΡΡ t, ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ Π²ΡΡΠΈΡΠ»ΠΈΡΡ ΡΡΠΌΠΌΡ β ΡΡΠΌΠΌΠ°ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ, ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡ ΡΡΡ ΡΡΠΌΠΌΡ Π½Π° ΡΠ°Π·ΠΌΠ΅Ρ Π²Π΅ΠΊΡΠΎΡΠ°. ΠΡΠ΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π»ΠΎΠ³ΠΈΡΠ½ΡΠΌ. Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΎ ΡΡΠ΅Π΄Π½ΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ Π²ΡΠ²Π΅ΡΡΠΈ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ. ΠΠΎΡ Π±ΡΠ» ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠ΅ΡΠΈΡΡ ΡΡΡ Π·Π°Π΄Π°ΡΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ, ΡΡΠΎ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠ°ΠΊΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΡΠ΅Π΄Π½ΡΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ°? 8 + 7 + 3 β ΡΡΠΎ 18. Π Π°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° 3, ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ 6. ΠΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ 6. ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΊΠΎΠ΄ ΠΈ Π²ΠΈΠ΄ΠΈΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ 6, ΠΊΠΎΠ΄ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠΎ Π΅ΡΠ»ΠΈ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΠΎ Π² ΡΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ Π±ΡΠ»ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅: Π²Π°ΠΌ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°Π»ΠΎΡΡ, ΡΡΠΎ Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅, Π½Ρ ΠΈΠ»ΠΈ Π½Π΅ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅. ΠΠΎΡΠ΅ΠΌΡ ΡΠ°ΠΊ? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ Π΅ΡΠ»ΠΈ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Ρ Π²Π°Ρ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ Π²Π΅ΠΊΡΠΎΡΠ΅ Π±ΡΠ΄ΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, β8, β7 ΠΈ 3, ΠΊΠΎΠ΄ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ. ΠΠΎΡΠ΅ΠΌΡ? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ… ΠΊΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, β8 β 7 + 3 β ΡΡΠΎ β12. β12 / 3 β Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ β4. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ, ΡΡΠΎ ΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ. ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ΄, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΈ Π²ΠΈΠ΄ΠΈΠΌ ΡΡΠΎ-ΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΡΡΠ°Π½Π½ΠΎΠ΅. ΠΡ Π²ΠΈΠ΄ΠΈΠΌ 1431655761. ΠΡΠΎ Π½Π΅ β4. Π§ΡΠΎ ΠΆΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ? ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΌΡ ΠΎΡ Π½Π΅Π·Π½Π°Π½ΠΈΡ Π½Π΅Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ ΡΠ·ΡΠΊΠ° C++. ΠΠ½ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Ρ Π½Π°Ρ Π²ΠΎΡ Π·Π΄Π΅ΡΡ, ΡΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΈΠΏ, t.size() β ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠΈΠΏ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΡΠΌΠ΅Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°. ΠΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎ ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ Π±ΡΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ, ΠΈ ΡΡΠΎ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΏ, ΠΌΡ ΡΡΠΎ Π½Π΅ ΡΡΠ»ΠΈ. ΠΠ°Π»Π΅Π΅ ΠΌΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π²ΠΈΠ΄Π΅ΠΎ. ΠΠΎΠΊΠ° ΡΡΠΎ. ΠΠ°ΠΊΠ°Ρ Π΅ΡΠ΅ Π±ΡΠ²Π°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ? ΠΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ: Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° int, Π² Π½Π΅Π΅ ΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π²Π° ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π° β 2 ΠΈ Π΄Π΅Π²ΡΡΡ Π½ΡΠ»Π΅ΠΉ. ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, Π² C++ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π»Ρ Π»ΡΡΡΠ΅ΠΉ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΠΈ ΡΠ°Π·Π±ΠΈΠ²Π°ΡΡ ΡΠ°Π·ΡΡΠ΄Ρ Π² ΡΠΈΡΠ»Π΅ ΠΎΠ΄ΠΈΠ½Π°ΡΠ½ΠΎΠΉ ΠΊΠ°Π²ΡΡΠΊΠΎΠΉ. Π ΡΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ x ΡΡΠΏΠ΅ΡΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² ΡΠΈΠΏΠ΅ int, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΅Π΅ Π²ΡΠ²Π΅ΡΡΠΈ, Π° ΠΏΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°Ρ ΠΎΡΠ΅ΡΡ ΡΠΌΠ½ΠΎΠΆΠΈΡΡ Π΅Π΅ Π½Π° 2, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ. Π Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ½ΠΎΠ²Π° ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ. ΠΡΠ°ΠΊ, Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΊΠΎΠ΄ ΠΈ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ Ρ Π½Π°Ρ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ x Π±ΡΠ»ΠΎ 2 ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π°, Π° Π² ΠΈΡΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ. 4 ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π° Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΠΏΠ° int Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠ»ΠΎΡΡ. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΡΠ΄ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΡΠ·ΡΠΊΠ° C++. ΠΠ΅ΡΠ²Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ: Π² ΡΠ·ΡΠΊΠ΅ C++ ΠΏΠ°ΠΌΡΡΡ Π΄Π»Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π°. Π―Π·ΡΠΊ C++ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π° Π²Π°Ρ Π²ΡΠ΄Π΅Π»ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ Π½Π΅ ΠΏΠ»Π°ΡΠΈΡΡ Π·Π° ΡΠΎ, ΡΡΠΎ Π²Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½Ρ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ Π±ΠΎΠ»ΡΡΠ΅ 2 ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄ΠΎΠ², ΡΠ·ΡΠΊ C++ Π΄Π»Ρ Π²Π°Ρ Π²ΡΠ΄Π΅Π»ΠΈΡ Π²ΠΎΡ ΡΠΎΠ²Π½ΠΎ ΡΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠΈΡΠ»Π° ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 2 ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π°. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΡΠ·ΡΠΊΠ° C++ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. Π Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΡΠΎ ΠΈΠ·ΡΡΠΈΡΡ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ. ΠΠΎ-Π²ΡΠΎΡΡΡ , Π²ΡΠΎΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ Π² Π·Π°Π΄Π°ΡΠ΅ Β«Π‘ΡΠ΅Π΄Π½ΡΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ°Β», Π΅ΡΠ»ΠΈ Π±Ρ ΡΠ°ΠΌ Π΄ΠΎΠΏΡΡΠΊΠ°Π»ΠΈΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ, ΡΡΠΎ ΡΠΎ, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ ΡΠ·ΡΠΊΠ° C++ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅. ΠΠΎΡΠ΅ΠΌΡ? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΡ Ρ ΡΠ°Π½ΠΈΡΡ Π² ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΎΠΏΡΡΡ, Π²Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ»Π°ΡΠΈΡΡ Π·Π° ΡΠΎ, ΡΡΠΎ Π²Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅, ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π·ΡΡΡ ΡΠ΅Π±Π΅ Π΄Π»Ρ ΡΡΠΈΡ ΡΠ΅Π»Π΅ΠΉ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π΅Π»ΡΠ·Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π’Π΅ΠΌ ΡΠ°ΠΌΡΠΌ Π²Ρ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Ρ ΡΠ°Π½ΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΡΠ°ΠΊ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ Ρ Π½Π°Ρ Π±ΡΠ²Π°ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ. Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ β ΡΡΠΎ ΡΠΈΠΏ int. ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ ΠΌΡ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΊΡΡΡΠ΅. Π ΠΊΠ°ΠΊΠΎΠΌ ΡΠΌΡΡΠ»Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ? ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ auto x = 1, ΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ x ΠΏΠΎΠ»ΡΡΠΈΡ ΡΠΈΠΏ int. Π’ΠΎ Π΅ΡΡΡ Π²ΡΠ΅ ΡΠΈΡΠ»Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΏΡΡΠΌΠΎ Π²ΠΎΡ Π² Π²ΠΈΠ΄Π΅ ΡΠΈΡΡ ΠΏΠΈΡΠ΅ΡΠ΅ Π² Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅, ΠΈΠΌΠ΅ΡΡ ΡΠΈΠΏ int, Π΅ΡΠ»ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΎΠ½ΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠ΅. ΠΡΠΎΡ ΡΠΈΠΏ β ΠΏΠΎΡΠ΅ΠΌΡ Π΅ΡΠ΅ ΠΎΠ½ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½. ΠΠ½ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, Π½Π° ΡΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΠ΅ Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ½ ΡΠΎΠ²Π½ΠΎ ΡΠ°ΠΊΠΎΠΉ, ΡΡΠΎΠ±Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π½ΠΈΠΌ Π½Π°ΠΏΡΡΠΌΡΡ ΡΡΠ°Π½ΡΠ»ΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ Π² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. Π ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ, Π²Π°ΠΌ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΡΡ, ΡΡΠΎ ΠΎΠ½ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ, Π½ΠΎ Π½Π° Π²ΡΠ΅Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ ΠΎΠ½ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅Π³Π΄Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ 4 Π±Π°ΠΉΡΠ° ΠΈΠ»ΠΈ 32 Π±ΠΈΡΠ°, ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ β ΠΎΡ β2Β³ΒΉ Π΄ΠΎ (2Β³ΒΉ β 1), ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 2 ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π°. ΠΠΎ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΡΡΠ΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Ρ ΡΠΈΠΏΠ° int Π΅ΡΡΡ Π΅Π³ΠΎ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ Π°Π½Π°Π»ΠΎΠ³ β ΡΠΈΠΏ unsigned int. ΠΠΎΡ ΡΠΎΠ²Π½ΠΎ ΡΠ°ΠΊ, ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΠ±Π΅Π», Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ°; ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ unsigned, Π±Π΅Π· int. ΠΡΠΎΡ ΡΠΈΠΏ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ, ΠΊΠ°ΠΊ ΠΈ int, ΠΎΠ½ ΡΠΎΠΆΠ΅ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Π½Π° Π²Π°ΡΠ΅ΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅, Π½ΠΎ ΠΎΠ½ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΎΠ½ Π²ΠΌΠ΅ΡΠ°Π΅Ρ ΡΠΈΡΠ»Π° ΠΎΡ 0 Π΄ΠΎ (2Β³Β² β 1). ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π² Π΄Π²Π° ΡΠ°Π·Π° Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠΈΡΠ΅Π» Π²ΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π·Π° ΡΡΠ΅Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΡ Π½Π΅ Ρ ΡΠ°Π½ΠΈΠΌ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°. ΠΡΡΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΏ β ΡΡΠΎ ΡΠΈΠΏ size_t. ΠΡΠΎ ΡΠΎΠ²Π½ΠΎ ΡΠΎΡ ΡΠΈΠΏ, ΠΊΠΎΡΠΎΡΡΠΉ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ size Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΡΠ·ΡΠΊΠ° C++, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π΅ΠΊΡΠΎΡ. ΠΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅Ρ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΠΈ Π²Π°ΡΠ΅ΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. Π’ΠΎ Π΅ΡΡΡ ΡΠΈΠΏ size_t ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΡΠΌΠ΅ΡΠ°ΡΡ ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ²Π°ΡΡ. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ 32-Π±ΠΈΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, size_t Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ 32 Π±ΠΈΡΠ°, Π΅ΡΠ»ΠΈ 64-Π±ΠΈΡΠ½Π°Ρ, ΡΠΎ 64 Π±ΠΈΡΠ°. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ. ΠΡΠΎ Π±ΡΠ»ΠΈ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΠΏΡ ΡΠ·ΡΠΊΠ° C++. ΠΠΎΡΠ΅ΠΌΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΈ ΠΈΠ· ΡΠ·ΡΠΊΠ° C ΠΊ Π½Π°ΠΌ ΠΏΡΠΈΡΠ»ΠΈ. Π Π΅ΡΠ΅ Π΅ΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΈΠΏΡ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠ²Π½ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ Π·Π°ΡΠ°Π½Π΅Π΅ ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ cstdint, ΡΠΎ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΏ int32_t. ΠΡΠΎ Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΏ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ ΡΠΎΠ²Π½ΠΎ 32 Π±ΠΈΡΠ°. Π’ΠΎ Π΅ΡΡΡ ΠΊΠ°ΠΊ int, Π½ΠΎ Ρ Π½Π΅Π³ΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ. ΠΡΡΡ Ρ Π½Π΅Π³ΠΎ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ Π°Π½Π°Π»ΠΎΠ³, ΡΡΠΎ ΡΠΈΠΏ uint32_t, ΠΈ ΡΠ°ΠΊΠΆΠ΅ Π΅ΡΡΡ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΡΠΈΠΏΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² 8 Π±ΠΈΡ, 16 Π±ΠΈΡ ΠΈ 64 Π±ΠΈΡΠ°. int8_t, uint8_t, int16_t, uint16_t ΠΈ int64_t, uint64_t. ΠΡΠ°ΠΊ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ΅Π·ΡΠΌΠΈΡΡΠ΅ΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΈΠΏΡ ΠΌΡ ΡΠ·Π½Π°Π»ΠΈ. Π£ Π½Π°Ρ Π΅ΡΡΡ ΡΠΈΠΏ int, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ 4 Π±Π°ΠΉΡΠ°, Π΅ΡΡΡ ΡΠΈΠΏ unsigned int, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ, Π½ΠΎ ΠΎΠ½ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ, ΠΈ Π΅ΡΡΡ ΡΠΈΠΏ size_t, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ 4 ΠΈΠ»ΠΈ 8 Π±Π°ΠΉΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΅ΡΡΡ ΡΠΈΠΏΡ Ρ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ: int8_t, int16_t, int32_t, int64_t β Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ, ΠΈ ΠΈΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈ Ρ ΠΏΡΠ΅ΡΠΈΠΊΡΠΎΠΌ u. ΠΠ°ΠΊ ΠΆΠ΅ Π½Π°ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΡ ΡΠΈΠΏΠ°? ΠΠ°ΠΊ ΠΆΠ΅ Π½Π°ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΎΡ ΡΠΈΠΏ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ? ΠΡ ΠΏΠΎΠΊΠ° Π½Π΅ Π³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΏΡΠΎ Π·Π½Π°ΠΊΠΎΠ²ΠΎΡΡΡ ΠΈ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΡΡΡ, ΡΡΠΎ ΠΌΡ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ ΠΏΠΎΠ·ΠΆΠ΅. ΠΠ°ΠΊ ΠΆΠ΅ Π½Π°ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠΈΠΏΠ°? ΠΡΠ»ΠΈ Π²Π°ΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° int, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΅Π³ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΠΈ, ΡΠΎ Π΅ΡΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Ρ ΡΠ°Π½ΠΈΡΡ ΡΠΈΡΠ»Π° ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΠΈΠ»Π»ΠΈΠΎΠ½Π°, ΠΏΠΎΡΡΠ΄ΠΊΠ° 10ΒΉΒ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΏ int64_t. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π΅Π΄ΠΈΠ½ΠΎΠΎΠ±ΡΠ°Π·ΠΈΡ ΠΈ Π²Π°Ρ ΠΏΡΠ³Π°Π΅Ρ ΡΠΎ, ΡΡΠΎ Π½ΠΈΠΊΡΠΎ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ ΡΠΈΠΏ int Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ 4 Π±Π°ΠΉΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠΈΠΏ int32_t, Ρ ΠΎΡΡ ΡΡΠΎ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π½Π΅ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΊΠ·ΠΎΡΠΈΠΊΠ°, ΡΠ°Π·Π²Π΅ ΡΡΠΎ Π΄Π»Ρ Π΅Π΄ΠΈΠ½ΠΎΠΎΠ±ΡΠ°Π·ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. Π Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΏΠ°ΠΌΡΡΡ Π½Π° ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠ°Ρ , ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΏΡ ΠΌΠ΅Π½ΡΡΠ΅ΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ int8_t, int16_t. Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°Π±ΡΠ»ΠΈ ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ ? ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΠ΄ΡΠΈ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²Π·ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ… ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ Π·Π°Π±ΡΠ»ΠΈ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ int16_t. ΠΠ°ΠΊ ΡΠ·Π½Π°ΡΡ Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅Ρ? ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ cout ΠΈ Π²ΡΠ²Π΅ΡΡΠΈ sizeof(int16_t). Π’Π°ΠΊ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ Π² Π±Π°ΠΉΡΠ°Ρ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. ΠΡΠ°Π²Π΄Π°, ΡΡΠΎ ΠΈ ΡΠ°ΠΊ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, 16 / 8 β ΡΡΠΎ 2: 16 Π±ΠΈΡ β 2 Π±Π°ΠΉΡΠ°. ΠΠ»ΠΈ Π²Ρ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠΈΠΏΠ° int. ΠΠΎΡ Ρ Π³ΠΎΠ²ΠΎΡΠΈΠ», ΡΡΠΎ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅ΡΡΡ, ΡΡΠΎ Ρ Π½Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅Ρ 4 Π±Π°ΠΉΡΠ°, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, Π½Π° ΠΌΠΎΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ ΠΊΠ°ΠΊΠΎΠΉ Ρ Π½Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅Ρ. ΠΠ°ΠΏΡΡΡΠΈΠΌ ΡΡΠΎΡ ΠΊΠΎΠ΄. 4 Π±Π°ΠΉΡΠ°, Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΠΏΠΎΡΡΠΈ Π²ΡΠ΅Π³Π΄Π° 4 Π±Π°ΠΉΡΠ°. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ sizeof Π΅ΡΠ΅ Π²ΡΠ·ΡΠ²Π°ΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ ΡΠΈΠΏΠ°, Π½ΠΎ ΠΈ ΠΎΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. ΠΡΠ»ΠΈ Π±Ρ Ρ Π²Π°Ρ Π±ΡΠ»Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ int x, ΡΠΊΠ°ΠΆΠ΅ΠΌ, Π²Ρ Π±Ρ ΠΌΠΎΠ³Π»ΠΈ Π²ΡΠ·Π²Π°ΡΡ sizeof(x). ΠΡ Π΄Π° Π»Π°Π΄Π½ΠΎ, ΡΡΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ. ΠΡΠ°ΠΊ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ°, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΠ² ΠΌΠΎΠ΄ΡΠ»Ρ limits β ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ. Π ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° int. ΠΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ? ΠΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ: numeric_limits, Π² ΡΠ³Π»ΠΎΠ²ΡΡ ΡΠΊΠΎΠ±ΠΊΠ°Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ, ΠΈ Π΄Π°Π»ΡΡΠ΅ ΡΠ΅ΡΠ΅Π· Π΄Π²Π° Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΡ β ΡΡΠΎ Π²Π°Ρ ΠΎΠ± ΡΡΠΎΠΌ ΡΠΈΠΏΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ. Π― Π²ΡΠ·ΡΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ min: ΠΌΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Π½Ρ ΠΈ Π΄Π°Π²Π°ΠΉΡΠ΅ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΡΡ ΠΊΠ°ΡΡΠΈΠ½Ρ Π²ΡΠ²Π΅Π΄Π΅ΠΌ Π΅ΡΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ°: numeric_limits<int>::max. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΆΠ΅ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° int. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΌΡ ΡΡΠΎ ΡΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ β2Β³ΒΉ ΠΈ (2Β³ΒΉ β 1). ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΡΠΈ ΡΠΈΡΠ»Π°. Π― Π·Π°Π±ΡΠ» ΠΊΡΡΠ³Π»ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ. max β ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π½Π°Π΄ΠΎ ΡΡΠ°Π²ΠΈΡΡ ΠΊΡΡΠ³Π»ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π½Π΅Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ². ΠΠ°ΠΏΡΡΠΊΠ°Ρ ΠΊΠΎΠ΄ ΠΈ Π²ΠΈΠΆΡ, ΡΡΠΎ ΡΠΈΠΏ int ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ 4 Π±Π°ΠΉΡΠ°, Π΅Π³ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ β ΡΡΠΎ β2147483648, ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅, Π½ΠΎ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ ΠΌΠ΅Π½ΡΡΠ΅, ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π΄Π²Π° ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π°. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΠΎΡ ΠΆΠ΅ ΠΏΡΠΈΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π²Π΄ΡΡΠ³ Π² ΡΡΠΆΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΡΠ²ΠΈΠ΄Π΅Π»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ, ΠΏΡΠΎ ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ Π²Π°ΠΌ Π½Π΅ ΡΠ°ΡΡΠΊΠ°Π·Π°Π»ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡ Π²Π°ΠΌ Π½Π΅ ΡΠ°ΡΡΠΊΠ°Π·Π°Π»ΠΈ ΠΏΡΠΎ ΡΠΈΠΏ long int, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π²ΠΌΠ΅ΡΡΠΎ Π½Π΅Π³ΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΏΡ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ cstdint. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΠΈΠΏ long int: ΠΊΠ°ΠΊΠΎΠΉ Ρ Π½Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π Π°Π·ΠΌΠ΅Ρ ΠΎΠ±ΡΡΠ½ΠΎ 4 ΠΈΠ»ΠΈ 8 Π±Π°ΠΉΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ΄, Π·Π°ΠΏΡΡΡΠΈΠΌ, ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΠΎΠ½ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ°Π²Π΅Π½ ΡΠΈΠΏΡ int, Π½ΠΎ ΡΡΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°ΠΊ. ΠΡΠ°ΠΊ, ΡΡΠΎ ΠΌΡ ΡΠ·Π½Π°Π»ΠΈ Π² ΡΡΠΎΠΌ Π²ΠΈΠ΄Π΅ΠΎ? ΠΡ ΡΠ·Π½Π°Π»ΠΈ, ΡΡΠΎ Π² ΡΠ·ΡΠΊΠ΅ C++ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΡΠ°ΠΌ Π΅ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΏ int. Π ΡΠ΅ΠΌ ΡΡΠΈ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ? ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΎΠ½ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ, ΡΠΎΠΉ ΠΏΠ°ΠΌΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡΡ, ΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΎΠ½ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ Π·Π½Π°ΠΊΠΎΠ²ΠΎΡΡΡΡ ΠΈΠ»ΠΈ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΡΡΡΡ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΠΏΡ Π½Π΅ Ρ ΡΠ°Π½ΡΡ ΠΎΡΠΎΠ·Π½Π°Π½Π½ΠΎ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°. ΠΡ ΡΠ·Π½Π°Π»ΠΈ, ΡΡΠΎ ΡΠΈΠΏ int β ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ, Ρ Π½Π΅Π³ΠΎ Π΅ΡΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ Π°Π½Π°Π»ΠΎΠ³ unsigned int, ΡΡΠΎ Π΅ΡΡΡ ΡΠΈΠΏ size_t β ΡΡΠΎ ΡΠΈΠΏ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ size Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ², ΡΠΈΠΏ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ². ΠΡ ΡΠ·Π½Π°Π»ΠΈ ΠΏΡΠΎ ΡΠΈΠΏΡ, Ρ ΠΊΠΎΡΠΎΡΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ, Π½Π°ΡΡΠΈΠ»ΠΈΡΡ ΡΠ·Π½Π°Π²Π°ΡΡ ΠΏΠΎ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠΌΡ ΡΠΈΠΏΡ Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈ Π΅Π³ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π Π΄Π°Π»ΡΡΠ΅ ΠΌΡ ΠΊΠ°ΠΊ ΡΠ°Π· Π½Π°ΡΡΠΈΠΌΡΡ ΡΠ΅ΡΠ°ΡΡ ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ Π½Π°ΡΠ°Π»ΠΈ, β ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΏΡΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ C-51*
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ C ΠΈΠΌΠ΅Π΅Ρ ΠΎΠ³ΡΠΎΠΌΠ½Π΅ΠΉΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ΠΎ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ±ΡΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π·Π°Π³ΡΡΠ·ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²ΡΠ·Π²Π°Π½ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
Π² ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌ ΡΠ΅ΠΊΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌ
ΡΠ΅Π³ΠΈΡΡΡΠ°ΠΌ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΠΈ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΡΠ΅ΡΡΡΡΠ°ΠΌ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΠΎΠΆΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π·Π°ΡΠ°Π½Π΅Π΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
.
Π ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ C51 Π»ΡΠ±Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π° Π΄ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΠ°ΠΊ
ΡΠΆΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΎΡΡ ΡΠ°Π½Π΅Π΅, ΡΡΠΎΡ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π΄Π»Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ²
ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° MCS-51, ΠΏΠΎΡΡΠΎΠΌΡ Π² ΡΠΎΡΡΠ°Π²Π΅ ΡΠ·ΡΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΡΡΡΡΠΊΡΡΡΠ° ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ². ΠΡΠΈ
ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΎΡΡΠ°ΠΆΠ΅Π½Ρ Π²ΠΎ Π²Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΡΡ
ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
. Π ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ C-51 Π½Π΅ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ
ΡΡΠ°Π½Π΄Π°ΡΡΠ° ANSI.
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ C51 ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ Π²ΠΈΠ΄Π΅:
[ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠ»Π°ΡΡΠ° ΠΏΠ°ΠΌΡΡΠΈ] ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΠΏΠ° [ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΠΏΠ° ΠΏΠ°ΠΌΡΡΠΈ] ΠΎΠΏΠΈΡΠ°ΡΠ΅Π»Ρ [=ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΎΡ] [,ΠΎΠΏΠΈΡΠ°ΡΠ΅Π»Ρ [= ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΎΡ] ]...
ΠΠΏΠΈΡΠ°ΡΠ΅Π»Ρ — ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π»ΠΈΠ±ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½Π°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ Ρ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠΌΠΈ ΡΠΊΠΎΠ±ΠΊΠ°ΠΌΠΈ, ΠΊΡΡΠ³Π»ΡΠΌΠΈ ΡΠΊΠΎΠ±ΠΊΠ°ΠΌΠΈ
ΠΈΠ»ΠΈ Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠΎΠΉ (Π½Π°Π±ΠΎΡΠΎΠΌ Π·Π²Π΅Π·Π΄ΠΎΡΠ΅ΠΊ).
Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΠΏΠ° — ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΡ
ΡΠ»ΠΎΠ², ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠ΅ ΡΠΈΠΏ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π ΡΠ·ΡΠΊΠ΅ Π‘Π ΠΈΠΌΠ΅Π΅ΡΡΡ
ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ (ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅) ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
.
ΠΠ½ΠΈΡΠΈΠ°ΡΠΎΡ — Π·Π°Π΄Π°Π΅Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠΏΠΈΡΠΎΠΊ Π½Π°ΡΠ°Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ (ΠΊΠΎΡΠΎΡΠΎΠ΅) ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ.
Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠ»Π°ΡΡΠ° ΠΏΠ°ΠΌΡΡΠΈ — ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ΅ΡΡΡΠ΅Ρ
ΠΊΠ»ΡΡΠ΅Π²ΡΡ
ΡΠ»ΠΎΠ² ΡΠ·ΡΠΊΠ° Π‘: auto, bit, extern, register, sbit, sfr, sfr16 static auto, extern, register, static, ΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ,
ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΏΠ°ΠΌΡΡΡ ΠΏΠΎΠ΄ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΠΌΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, Π° Ρ Π΄ΡΡΠ³ΠΎΠΉ, ΠΎΠ±Π»Π°ΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΡΠΎΠΉ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Ρ.Π΅., ΠΈΠ· ΠΊΠ°ΠΊΠΈΡ
ΡΠ°ΡΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΊ Π½Π΅ΠΉ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ.
Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΠΏΠ° ΠΏΠ°ΠΌΡΡΠΈ — ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ΅ΡΡΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΡ
ΡΠ»ΠΎΠ² ΡΠ·ΡΠΊΠ° Π‘-51: code, data, idata, bdata, xdata, pdata ΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ,
Π² ΠΊΠ°ΠΊΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Π±ΡΠ΄Π΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ.
ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π° Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
Π¦Π΅Π»ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ : Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ: bit float sbit char int short long signed unsigned sfr sfr16
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π° ΠΊΠ°ΠΊ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠ°Ρ. ΠΡΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° const ΠΊ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΡΠΈΠΏΠ°. ΠΠ±ΡΠ΅ΠΊΡΡ Ρ ΡΠΈΠΏΠΎΠΌ const
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π΄Π°Π½Π½ΡΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ, Ρ.Π΅. ΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΡΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΠ»ΠΎΠ²Π° const
ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΠΏΠ°, ΡΠΎ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΠΏΠ° int. ΠΡΠ»ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ const ΡΡΠΎΠΈΡ ΠΏΠ΅ΡΠ΅Π΄ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠΎΡΡΠ°Π²Π½ΡΡ
ΡΠΈΠΏΠΎΠ² (ΠΌΠ°ΡΡΠΈΠ², ΡΡΡΡΠΊΡΡΡΠ°, ΡΠΌΠ΅ΡΡ,
ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅), ΡΠΎ ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ²Π»ΡΡΡΡΡ Π½Π΅ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅ΠΌΡΠΌ, Ρ.Π΅. Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΅ΠΌΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·.
ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° const:
const float A=2.128E-2; const B=286; //ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ const int B=286
ΠΡΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΠΊΠ»Π°ΡΡΠ° ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ Π²ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌ ΠΠΠ£. ΠΠ΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡΠ°ΠΏΠ΅ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ. ΠΠ»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΠΠ£ Π»ΡΡΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΡΠΈΠΏΠ° ΠΏΠ°ΠΌΡΡΠΈ code
Π¦Π΅Π»ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠ°ΠΌΡΡΠΈ, Π²ΡΠ΄Π΅Π»ΡΠ΅ΠΌΠΎΠΉ ΠΏΠΎΠ΄
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ (ΡΠ°Π±Π». 6).
Π’Π°Π±Π»ΠΈΡΠ° 6
Π’ΠΈΠΏ | Π Π°Π·ΠΌΠ΅Ρ ΠΏΠ°ΠΌΡΡΠΈ Π² Π±ΠΈΡΠ°Ρ | Π Π°Π·ΠΌΠ΅Ρ ΠΏΠ°ΠΌΡΡΠΈ Π² Π±Π°ΠΉΡΠ°Ρ | ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ |
---|---|---|---|
bit | 1 | Β | ΠΎΡ 0 Π΄ΠΎ 1 |
char | 8 | 1 | ΠΎΡ -128 Π΄ΠΎ 127 |
unsigned shar | 8 | 1 | oΡ 0 Π΄ΠΎ 255 |
int, short | 16 | 2 | ΠΎΡ -32768 Π΄ΠΎ 32767 |
long | 32 | 4 | ΠΎΡ -2 147 483 648 Π΄ΠΎ 2 147 483 647 |
unsigned int, unsigned short | 16 | 2 | ΠΎΡ 0 Π΄ΠΎ 65535 |
unsigned long | 32 | 4 | ΠΎΡ 0 Π΄ΠΎ 4 294 967 295 |
sbit | 1 | Β | 0 ΠΈΠ»ΠΈ 1 |
sfr | 8 | 1 | oΡ 0 Π΄ΠΎ 255 |
sfr16 | 16 | 2 | ΠΎΡ 0 Π΄ΠΎ 65535 |
ΠΡΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π° signed ΠΈ unsigned Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Ρ. ΠΠ½ΠΈ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΠΊΠ°ΠΊ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΡΡΡ Π½ΡΠ»Π΅Π²ΠΎΠΉ Π±ΠΈΡ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Ρ.Π΅., Π΅ΡΠ»ΠΈ ΡΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅
ΡΠ»ΠΎΠ²ΠΎ unsigned, ΡΠΎ Π½ΡΠ»Π΅Π²ΠΎΠΉ Π±ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΡΠΈΡΠ»Π°, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½ΡΠ»Π΅Π²ΠΎΠΉ Π±ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ. Π ΡΠ»ΡΡΠ°Π΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π°
unsigned ΡΠ΅Π»Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΡΠΈΡΠ°Π΅ΡΡΡ Π·Π½Π°ΠΊΠΎΠ²ΠΎΠΉ. Π ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΠΏΠ° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° signed ΠΈΠ»ΠΈ unsigned ΠΈ Π΄Π°Π»Π΅Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ
ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΡΠΎ ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° int. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
unsigned int n; //ΠΠ΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠΈΡΠ°Π·ΡΡΠ΄Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ n unsigned int b; int c; //ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ signed int c unsigned d; //ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ unsigned int d signed f; //ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ signed int f
ΠΡΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΈΠΏΠ° char ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΈΠ»ΠΈ Π΄Π»Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ
Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ². ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠΏΠ° char
ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠ΄ (ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 1 Π±Π°ΠΉΡ), ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ.
ΠΡΠΌΠ΅ΡΠΈΠΌ ΡΠ°ΠΊΠΆΠ΅, ΡΡΠΎ Π²ΠΎΡΡΠΌΠ΅ΡΠΈΡΠ½ΡΠ΅ ΠΈ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ unsigned. ΠΡΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΡΡΡΡΠΈΠΊΡΠ° u ΠΈΠ»ΠΈ U ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ,
ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ° Π±Π΅Π· ΡΡΠΎΠ³ΠΎ ΠΏΡΠ΅ΡΠΈΠΊΡΠ° ΡΡΠΈΡΠ°Π΅ΡΡΡ Π·Π½Π°ΠΊΠΎΠ²ΠΎΠΉ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
0xA8C //int signed 01786l //long signed 0xF7u //int unsigned
Π§ΠΈΡΠ»Π° Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠΈΡ
ΡΠΈΡΠ»ΠΎ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ
ΡΠΈΠΏΠ° float. ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ double ΡΠΎΠΆΠ΅ Π΄ΠΎΠΏΡΡΡΠΈΠΌ Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ C51, Π½ΠΎ ΠΎΠ½ Π½Π΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΠΎΡΠ½ΠΎΡΡΠΈ
ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°.
ΠΠ΅Π»ΠΈΡΠΈΠ½Π° Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΡΠΈΠΏΠ° float Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 4 Π±Π°ΠΉΡΠ°. ΠΠ· Π½ΠΈΡ
1 Π±ΠΈΡ ΠΎΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π΄Π»Ρ Π·Π½Π°ΠΊΠ°, 8 Π±ΠΈΡ Π΄Π»Ρ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΠΉ
ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈ 23 Π±ΠΈΡΠ° Π΄Π»Ρ ΠΌΠ°Π½ΡΠΈΡΡΡ. ΠΡΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ ΡΡΠ°ΡΡΠΈΠΉ Π±ΠΈΡ ΠΌΠ°Π½ΡΠΈΡΡΡ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π΅Π½ 1, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ,
Π² ΡΠ²ΡΠ·ΠΈ Ρ ΡΡΠΈΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ ΡΠ°Π²Π΅Π½ ΠΎΡ Β±1.175494E-38 Π΄ΠΎ Β±3.402823E+38.
ΠΡΠΈΠΌΠ΅Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ:
float f, a, b;
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΠΎΠ³ΠΎ ΡΠΈΠΏΠ°
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ΠΌ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΠΉ Π·Π½Π°ΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ char ΠΈΠ»ΠΈ int. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°
Π±ΡΠ΄Π΅Ρ Π²ΡΠ΄Π΅Π»Π΅Π½ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π΄Π²Π° Π±Π°ΠΉΡΠ° Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²ΠΌΠ΅ΡΡΠΎ Π±Π΅Π·Π»ΠΈΠΊΠΈΡ
ΡΠΈΡΠ΅Π» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΠ½ΡΡΠ°Π½Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ½ΡΡΠ½Ρ ΠΈ Π»Π΅Π³ΡΠ΅ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΠ΅Π» 1,2,3,4,5,6,7 ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°Π·Π²Π°Π½ΠΈΡ Π΄Π½Π΅ΠΉ Π½Π΅Π΄Π΅Π»ΠΈ: Poned, Vtorn, Sreda, Chetv, Pjatn, Subb, Voskr. ΠΡΠΈ ΡΡΠΎΠΌ
ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ,
ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡ ΡΠ°ΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ ΠΈ ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, Π½Π΅ Π²Ρ
ΠΎΠ΄ΡΡΠ΅ΠΉ Π² ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΠΉ Π·Π°ΡΠ°Π½Π΅Π΅ ΡΠΏΠΈΡΠΎΠΊ,
Π²ΡΠ΄Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅.
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ enum ΡΠΈΠΏΠ° ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ ΠΈ ΠΊΠ°ΠΊ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Ρ Π² Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ ΠΈ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
if(rab_ned == SUB) dejstvie = rabota [rab_ned];
ΠΡΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΡ
ΠΊΠΎΠ½ΡΡΠ°Π½Ρ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ.
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΡΡΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ. ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° enum ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ
Π² Π΄Π²ΡΡ
ΡΠΎΡΠΌΠ°ΡΠ°Ρ
:
- enum [ΠΈΠΌΡ ΡΠΈΠΏΠ° ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ] {ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ} ΠΈΠΌΡ1 [,ΠΈΠΌΡ2 …];
- enum ΠΈΠΌΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΎΠΏΠΈΡΠ°ΡΠ΅Π»Ρ [,ΠΎΠΏΠΈΡΠ°ΡΠ΅Π»Ρ..];
Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ Π·Π°Π΄Π°ΡΡΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ. ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ ΡΠΈΠΏΠ° ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ — ΡΡΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠΏΠΈΡΠΊΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ. ΠΠ° ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΈΠΌΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
.
Π‘ΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠ΄Π½Ρ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ Π²ΠΈΠ΄Π°:
ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ [= ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅]
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ — ΡΡΠΎ ΠΈΠΌΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ. ΠΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅ enum Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ. Π ΡΠ»ΡΡΠ°Π΅ Π΅ΡΠ»ΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ ΡΠ²Π½ΡΠΌ
ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½Π΅ Π·Π°Π΄Π°Π΅ΡΡΡ ΡΠΈΡΠ»ΠΎ, ΡΠΎ ΠΏΠ΅ΡΠ²ΠΎΠΌΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0, ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ — Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 1 ΠΈ Ρ.Π΄.
ΠΡΠΈΠΌΠ΅Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ rab_ned ΠΈ ΡΠΈΠΏΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΡ Ρ ΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, week Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
enum week {SUB = 0, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ SUB ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0 */ VOS = 0, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ VOS ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0 */ POND, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ POND ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 1 */ VTOR, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ VTOR ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 2 */ SRED, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ SRED ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 3 */ HETV, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ HETV ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 4 */ PJAT /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ PJAT ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 5 */ } rab_ned;
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ½ΡΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π·Π°Π΄Π°Π²Π°Π΅ΠΌΠΎΠ΅ ΡΡΠΈΠΌ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ½ΡΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ½ΠΎΠ³ΠΎ
Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ ΡΠΈΠΏ int ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌ, ΡΠ°ΠΊ ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ. Π‘Π»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅, Π΅ΡΠ»ΠΈ ΡΡΠΎΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ
ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ½ΠΎΠ³ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠ°Π²Π½ΠΎΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ½ΠΎΠΌΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° ΠΏΠ»ΡΡ 1. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ Π΄ΠΎΠ»ΠΆΠ½ΠΎ
ΠΏΠΎΠ΄ΡΠΈΠ½ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ:
- ΠΠ±ΡΡΠ²Π»ΡΠ΅ΠΌΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ.
- ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½Ρ ΠΎΡ Π²ΡΠ΅Ρ
Π΄ΡΡΠ³ΠΈΡ
ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² Π² ΡΠΎΠΉ ΠΆΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΈΠΌΠ΅Π½Π° ΠΎΠ±ΡΡΠ½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΈΠ· Π΄ΡΡΠ³ΠΈΡ ΡΠΏΠΈΡΠΊΠΎΠ² ΠΊΠΎΠ½ΡΡΠ°Π½Ρ. - ΠΠΌΠ΅Π½Π° ΡΠΈΠΏΠΎΠ² ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½Ρ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ ΠΈΠΌΠ΅Π½ ΡΠΈΠΏΠΎΠ² ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΡΡΡΡΠΊΡΡΡ ΠΈ ΡΠΌΠ΅ΡΠ΅ΠΉ Π² ΡΡΠΎΠΉ ΠΆΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ.
- ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ ΡΠΏΠΈΡΠΊΠ° ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ.
ΠΠΎ Π²ΡΠΎΡΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ Π΄Π»Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΆΠ΅ Π³ΠΎΡΠΎΠ²ΡΠΉ ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΆΠ΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΡΠΉ ΡΠ°Π½Π΅Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
enum week rab1;
Π ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ. ΠΡΠΈ ΡΡΠΎΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΡΠ°Π½Π΅Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ ΡΡΡΠ»Π°ΡΡΡΡ
ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΄Π΅Π»Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΡΠ²Π°Π»ΠΎΡΡ Π²ΡΡΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° typedef. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
Typedef enum {SUB = 0, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ SUB ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0 */ VOS = 0, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ VOS ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0 */ POND, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ POND ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 1 */ VTOR, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ VTOR ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 2 */ SRED, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ SRED ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 3 */ HETV, /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ HETV ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 4 */ PJAT /* ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ PJAT ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 5 */ } week;
ΠΡΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Π½Π΅ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΎΡΠ»ΠΈΡΠ°ΡΡΠΈΠΉΡΡ ΠΎΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ. Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΡΡΠΎΡ ΡΠΈΠΏ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ Π΄Π»Ρ
ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅.
* ΠΠ»Ρ ΡΠ΅Ρ
ΡΠΈΡΠ°ΡΠ΅Π»Π΅ΠΉ
ΡΡΠΎ Π²ΡΡΠ»ΠΈ Π½Π° ΡΡΡ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠΎ ΠΏΠΎΠΈΡΠΊΡ ΠΏΡΠΎΡΡ
ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π·Π΄Π΅ΡΡ
ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΡΠ·ΡΠΊ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π‘, Π° ΡΠ·ΡΠΊ, Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊ
ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°ΠΌ ΡΠ΅ΡΠΈΠΈ MCS-51.
ΠΠΌΠ΅ΡΡΡΡ ΠΎΡΠ»ΠΈΡΠΈΡ!
[ΠΠ°Π·Π°Π΄] [Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅]
[ΠΠΏΠ΅ΡΡΠ΄]
int, short, long, long long range
ΠΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΡ ΠΈ Π½Π΅ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ²: ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° int, short ΠΈ long Π²ΡΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ². Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΈΠΏ Π±Π΅Π· Π·Π½Π°ΠΊΠ°, ΡΠΈΠΏ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠΊΠ°Π·Π°Π½ ΠΊΠ°ΠΊ Π±Π΅Π· Π·Π½Π°ΠΊΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π±Π΅Π· Π·Π½Π°ΠΊΠ° long. Π’ΠΈΠΏ unsigned int ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ ΠΊΠ°ΠΊ unsigned, ΡΠΎ Π΅ΡΡΡ unsigned Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° ΡΠΈΠΏΠ° ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ unsigned int.
ΠΠ΄ΠΈΠ½ Π±Π°ΠΉΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΠΎΡΠ΅ΠΌΡ Π±ΠΈΡΠΎΠ², ΡΠΎ Π΅ΡΡΡ: 1 Π±Π°ΠΉΡ = 8 Π±ΠΈΡ;
Β«C ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΒ» ΠΏΠΈΡΠ°Π»: long ΠΈ int: Π‘ΡΠ°Π½Π΄Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠ΅Π΄ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ, ΡΡΠΎ long Π½Π΅ ΠΌΠ΅Π½ΡΡΠ΅ Π΄Π»ΠΈΠ½Ρ int, Π° int Π½Π΅ ΠΌΠ΅Π½ΡΡΠ΅ Π΄Π»ΠΈΠ½Ρ short.
Β
ΠΠΌΡ ΡΠΈΠΏΠ° ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±Π°ΠΉΡΠΎΠ² ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ
signed char 1 -2^7 ~ 2^7-1 -128ο½+127
short int 2 -2^14 ~ 2^14-1 -32768ο½+32767
int 4 -2^31 ~ 2^31-1 -2147483648ο½+2147483647
unsigned int 4 0 ~ 2^32-1 0 ~ 4294967295
long int 4 -2 ^ 31 ~ 2 ^ 31-1 -2147483648 ο½ + 2141483647 (Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ int)
unsigned long 4 0 ~ 2^32-1 0ο½4294967295
long long int 8 -2^63 ~ 2^63-1 -9223372036854775808ο½+9223372036854775807
unsigned long long 8 0 ~ 2^64-1 18446744073709551615
ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ __int64: 9223372036854775807
ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ __int64: -9223372036854775808
ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ° __int64: 18446744073709551615
Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄Π°Π½Π½ΡΡ , ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ int ΠΈ long, ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ, ΠΊΠΎΠ³Π΄Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ int Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΠΎΡΡΠΈΠ³Π½ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ long Π½Π΅ ΡΠ΅ΡΠ°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ long long.
PS: Π²Π΅ΡΡ Π½ΠΈΠΉ ΠΈΠ»ΠΈ Π½ΠΈΠΆΠ½ΠΈΠΉ ΠΏΡΠ΅Π΄Π΅Π» Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΡΠ΄Π²ΠΈΠ³Π° Π²Π»Π΅Π²ΠΎ (<<). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ int ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ ΠΊΠ°ΠΊ :-( 1 << 31) ~ ((1 << 31) -1)
Π‘Π΄Π²ΠΈΠ³ Π½Π° ΠΎΠ΄ΠΈΠ½ Π±ΠΈΡ Π²Π»Π΅Π²ΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ 2, Π»Π΅Π²ΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΡΠ΄Π²ΠΈΠ³Π° ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΈΠΉ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ, ΡΠ΅ΠΌ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΡΡΠΈΡΠ°Π½ΠΈΠ΅! !
Β
Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ² ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ | ΠΠΎΠΊΡΠΌΠ΅Π½ΡΡ Microsoft
- 2 ΠΌΠΈΠ½ΡΡΡ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅
32-ΡΠ°Π·ΡΡΠ΄Π½ΡΠ΅ ΠΈ 64-ΡΠ°Π·ΡΡΠ΄Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Microsoft C ++ ΡΠ°ΡΠΏΠΎΠ·Π½Π°ΡΡ ΡΠΈΠΏΡ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄Π°Π»Π΅Π΅ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
int
(Π±Π΅Π· Π·Π½Π°ΠΊΠ° int
)__int8
(Π±Π΅Π· Π·Π½Π°ΠΊΠ° __int8
)__int16
(Π±Π΅Π· Π·Π½Π°ΠΊΠ° __int16
)__int32
(Π±Π΅Π· Π·Π½Π°ΠΊΠ° __int32
)__int64
(Π±Π΅Π· Π·Π½Π°ΠΊΠ° __int64
)ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅
(Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅
)Π΄Π»ΠΈΠ½Π½ΡΠΉ
(Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ
)Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ
(Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ
)
ΠΡΠ»ΠΈ Π΅Π³ΠΎ ΠΈΠΌΡ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ Π΄Π²ΡΡ
Π·Π½Π°ΠΊΠΎΠ² ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ ( __
), ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ.
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΠ²Π»ΡΡΡΡΡ Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ.
Π’ΠΈΠΏ ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ | Π±Π°ΠΉΡΠ° | ΠΡΡΠ³ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° | ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ |
---|---|---|---|
Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ | 4 | ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½ | -2 147 483 648 Π΄ΠΎ 2 147 483 647 |
ΡΠ΅Π»ΠΎΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ° | 4 | Π±Π΅Π· Π·Π½Π°ΠΊΠ° | 0 Π΄ΠΎ 4 294 967 295 |
__int8 | 1 | ΡΠΈΠΌΠ²ΠΎΠ» | -128 Π΄ΠΎ 127 |
Π±Π΅Π· Π·Π½Π°ΠΊΠ° __int8 | 1 | ΡΠΈΠΌΠ²ΠΎΠ» Π±Π΅Π· Π·Π½Π°ΠΊΠ° | ΠΎΡ 0 Π΄ΠΎ 255 |
__int16 | 2 | ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ , ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ , ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ | -32 768 Π΄ΠΎ 32 767 |
Π±Π΅Π· Π·Π½Π°ΠΊΠ° __int16 | 2 | Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ , Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ int | 0 Π΄ΠΎ 65 535 |
__int32 | 4 | ΠΏΠΎΠ΄ΠΏΠΈΡΡ , ΠΏΠΎΠ΄ΠΏΠΈΡΡ , Π²Π½ΡΡΡ | -2 147 483 648 Π΄ΠΎ 2 147 483 647 |
Π±Π΅Π· Π·Π½Π°ΠΊΠ° __int32 | 4 | Π±Π΅Π· Π·Π½Π°ΠΊΠ° , Π±Π΅Π· Π·Π½Π°ΠΊΠ° int | 0 Π΄ΠΎ 4 294 967 295 |
__int64 | 8 | Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ , ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ | -9,223,372,036,854,775,808 Π΄ΠΎ 9,223,372,036,854,775,807 |
Π±Π΅Π· Π·Π½Π°ΠΊΠ° __int64 | 8 | Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ | 0 Π΄ΠΎ 18 446 744 073 709 551 615 |
Π±ΠΎΠ»Ρ | 1 | Π½Π΅Ρ | Π»ΠΎΠΆΠ½ΠΎ ΠΈΠ»ΠΈ ΠΈΡΡΠΈΠ½Π½ΠΎ |
ΡΠΈΠΌΠ²ΠΎΠ» | 1 | Π½Π΅Ρ | ΠΎΡ -128 Π΄ΠΎ 127 ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΡ 0 Π΄ΠΎ 255 ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ |
ΡΠΈΠΌΠ²ΠΎΠ» ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ | 1 | Π½Π΅Ρ | -128 Π΄ΠΎ 127 |
ΡΠΈΠΌΠ²ΠΎΠ» Π±Π΅Π· Π·Π½Π°ΠΊΠ° | 1 | Π½Π΅Ρ | ΠΎΡ 0 Π΄ΠΎ 255 |
ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ | 2 | ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π΅ , ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π΅ | -32 768 Π΄ΠΎ 32 767 |
ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ° | 2 | Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ int | 0 Π΄ΠΎ 65 535 |
Π΄Π»ΠΈΠ½Π½ΡΠΉ | 4 | Π΄Π»ΠΈΠ½Π½ΡΠΉ int , ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ int | -2 147 483 648 Π΄ΠΎ 2 147 483 647 |
Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ° | 4 | Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ | 0 Π΄ΠΎ 4 294 967 295 |
Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ | 8 | Π½Π΅Ρ (Π½ΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ __int64 ) | -9,223,372,036,854,775,808 Π΄ΠΎ 9,223,372,036,854,775,807 |
Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ | 8 | Π½Π΅Ρ (Π½ΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ __int64 ) | 0 Π΄ΠΎ 18 446 744 073 709 551 615 |
ΠΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ | Π²Π°ΡΡΠΈΡΡΠ΅ΡΡΡ | Π½Π΅Ρ | |
ΠΏΠΎΠΏΠ»Π°Π²ΠΎΠΊ | 4 | Π½Π΅Ρ | 3.4E +/- 38 (7 ΡΠΈΡΡ) |
Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ | 8 | Π½Π΅Ρ | 1.7E +/- 308 (15 ΡΠΈΡΡ) |
Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ | ΠΊΠ°ΠΊ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ | Π½Π΅Ρ | Π’ΠΎ ΠΆΠ΅, ΡΡΠΎ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ |
wchar_t | 2 | __wchar_t | 0 Π΄ΠΎ 65 535 |
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ __wchar_t
ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΠΈΠΏ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡΠΎΠ²ΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΡΠ΅ΡΠΈΠΊΡ L
ΠΏΠ΅ΡΠ΅Π΄ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ ΠΈΠ»ΠΈ ΡΡΡΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠΎΠΉ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ ΡΠΈΠΏΠ° ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ
ΠΈ Π±Π΅Π· Π·Π½Π°ΠΊΠ°
— ΡΡΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ Π»ΡΠ±ΡΠΌ ΡΠ΅Π»ΡΠΌ ΡΠΈΠΏΠΎΠΌ, ΠΊΡΠΎΠΌΠ΅ bool
. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ char
, signed char
ΠΈ unsigned char
— ΡΡΠΎ ΡΡΠΈ ΡΠ°Π·Π½ΡΡ
ΡΠΈΠΏΠ° Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ
ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΎΠ², ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° ΠΈ ΡΠ°Π±Π»ΠΎΠ½Ρ.
Π’ΠΈΠΏΡ int
ΠΈ unsigned int
ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ΅ΡΡΡΠ΅ Π±Π°ΠΉΡΠ°. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΡΠΉ ΠΊΠΎΠ΄ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° int
, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡ ΡΠ·ΡΠΊΠ° Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ, ΡΡΠΎΠ±Ρ ΡΡΠΎ Π·Π°Π²ΠΈΡΠ΅Π»ΠΎ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
C / C ++ Π² Visual Studio ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°. ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΠΌ. __int8, __int16, __int32, __int64
ΠΈ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΠΏΡΠ΅Π΄Π΅Π»Ρ.
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΡΠΌ. ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ.
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΠΈΠΏΠΎΠ² Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ·ΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΡΠ»Π°Π³ΠΎΠ² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°. ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΠΌ. ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠΉ C.
Π‘ΠΌ. Π’Π°ΠΊΠΆΠ΅
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π°
ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ
c — ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ
Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ — ΡΡΠΎ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΏΠ°ΠΌΡΡΠΈ, ΡΡΠΎΠ±Ρ Π²ΠΈΠ΄Π΅ΡΡ ΡΡΠΎΡ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΏΠ°ΠΌΡΡΠΈ ΠΊΠ°ΠΊ ΠΎΠ±Π»Π°ΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ΄ΠΈΠ½ Π±Π°ΠΉΡ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· 8 Π±ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ.8 ΠΈΠ»ΠΈ 256 ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΠΈΠ· 8 Π±ΠΈΡ.
ΠΠ΄Π΅ΡΡ Π²ΡΡΡΠΏΠ°Π΅Ρ Π² ΠΈΠ³ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° — ΠΊΠ°ΠΊ Π½Π°ΠΌ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΡΠΈ 256 ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΡΠΉ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½?
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² — ΠΏΡΠΈΠ½ΡΡΡ ΠΏΠ΅ΡΠ²ΡΡ ΠΈΠ· 256 ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ ΠΊΠ°ΠΊ 0
, Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΊΠ°ΠΊ 255
:
Π±Π°ΠΉΡ: 0 0 0 0 0 0 0 0 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Β«0Β»
byte: 0 0 0 0 0 0 0 1 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ "1"
.. ΡΠΊΠΎΡΠΎ ..
byte: 1 1 1 1 1 1 1 0 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ "254"
byte: 1 1 1 1 1 1 1 1 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ "255"
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ
Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΡ 0
Π΄ΠΎ 255
.ΠΡΠΎΡ ΡΠΈΠΏ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π±Π°ΠΉΡΠΎΠΌ Π±Π΅Π· Π·Π½Π°ΠΊΠ°
, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ, ΡΠΎΡΡΠ°Π²Π»ΡΡΡ Π±Π΅Π· Π·Π½Π°ΠΊΠ°
, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΠΊΠ°. ΠΠΎ ΡΡΡΠΈ, ΡΡΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ Π²ΡΠ΅ Π±ΡΠ»ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ.
Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ Π½Π°Ρ 256 ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ, ΡΡΠΎ, Π΅ΡΠ»ΠΈ ΠΌΡ Π½Π°Π·Π½Π°ΡΠΈΠΌ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ ΠΈΠ· Π½ΠΈΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°, Π° Π΄ΡΡΠ³Π°Ρ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° - ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°? ΠΡΠ°ΠΊ, ΠΌΡ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΠΌ Π±Π°ΠΉΡΠΎΠ²ΠΎΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΈΠ»ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅:
Π±Π°ΠΉΡ: 0 1 1 1 1 1 1 1 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ "127"
byte: 0 1 1 1 1 1 1 0 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Β«126Β»
.. ΡΠΊΠΎΡΠΎ ..
byte: 0 0 0 0 0 0 0 1 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ "0"
byte: 0 0 0 0 0 0 0 0 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ "0"
byte: 1 1 1 1 1 1 1 1 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Β«-1Β»
.. ΡΠΊΠΎΡΠΎ ..
Π±Π°ΠΉΡ: 1 0 0 0 0 0 0 1 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ "-127"
byte: 1 0 0 0 0 0 0 0 <- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ "-128"
ΠΡΡΠ΅ΡΠΏΠΎΠΌΡΠ½ΡΡΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Β«Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄ΠΎ Π΄Π²ΡΡ Β», Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²ΡΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠ° Π±ΡΠ»Π° Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π½Π° ΠΈΠ· ΡΡΠ°ΡΡΠΈ ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π΄ΠΎ Π΄Π²ΡΡ .
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π² ΡΠ΅Ρ
ΠΆΠ΅ 8 Π±ΠΈΡΠ°Ρ
ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΡΠΈΡΠ΅Π» ΠΎΡ -128
Π΄ΠΎ 127
.ΠΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π±Π°ΠΉΡΠΎΠΌ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ ,
, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ ΡΠΈΠΏ Π±Π°ΠΉΡ
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅, ΡΠ°ΠΊ ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΈΡΠ»Π°.
ΠΡΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΈ Π±Π°ΠΉΡΠ° Π±Π΅Π· Π·Π½Π°ΠΊΠ°
ΠΈ Π±Π°ΠΉΡΠ° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ
ΠΈΡ
Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ ΡΠ°Π·Π»ΠΈΡΠ½Ρ:
Π±Π°ΠΉΡ Π±Π΅Π· Π·Π½Π°ΠΊΠ°: 0-255
ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π±Π°ΠΉΡ: -128 - 127
ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ΠΈ ΠΎΠ±Π° ΠΈΠΌΠ΅ΡΡ 256 Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ. ΠΠ½ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ.ΠΡΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ .
Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΎ Π΄ΠΎ ΡΠΈΠΏΠΎΠ² int
, long
, float
, double
. ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±ΠΈΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°Π·Π½Π°ΡΠ°ΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
, ΡΠ°Π·Π»ΠΈΡΠ°Π΅ΡΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
int: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ <- 16 Π±ΠΈΡ
Π΄Π»ΠΈΠ½Π½ΡΠΉ: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ <- 32 Π±ΠΈΡΠ°
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±ΠΈΡΠΎΠ² Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ int
ΠΈ long
, ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²ΡΡΠ΅ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.16 ΠΈΠ»ΠΈ 65536
ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ. ΠΠΏΡΡΡ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π±Π°ΠΉΡ
, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΈΠ»ΠΈ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ Π½Π° ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅:
ΡΠ΅Π»ΠΎΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ°: 0 - 65535
ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ: -32768 - 32767
(ΠΎΠΏΡΡΡ ΠΆΠ΅, int
Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ 16-Π±ΠΈΡΠ½ΡΠΌ.)
Π’ΠΈΠΏΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ float
ΠΈ double
, ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π±ΠΈΡΠ°ΠΌΠΈ Π² ΠΏΠ°ΠΌΡΡΠΈ, Π½ΠΎ ΠΈΡ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ
ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
, ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ byte
ΠΈ int
ΡΠ΅ΠΌ, ΡΡΠΎ ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Ρ
ΡΠ°Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΏΠ°ΠΌΡΡΠΈ ΠΊΠ°ΠΊ Π΄Π²ΠΎΠΈΡΠ½ΡΠ΅ Π΄ΡΠΎΠ±ΠΈ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ.Π’ΠΈΠΏΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ½ΡΡΠΈΠ΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ².
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΈ Π²ΡΡΠΈΡΠ»ΡΡΡΡΡ Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ , ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ, Π³Π΄Π΅ Π΅ΡΡΡ ΡΡΠ°ΡΡΡ ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ΅ IEEE-754.
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π΄Π°Π½Π½ΡΡ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΈΠ· ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΏΠ°ΠΌΡΡΠΈ, Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ Π΅Π΄ΠΈΠ½ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ , ΠΈ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡΡΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ.
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ C
Π Π΅Π·ΡΠΌΠ΅ : Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ Π²Ρ ΠΈΠ·ΡΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ΅Π»ΡΠ΅ ΡΠΈΠΏΡ C , Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ ΠΈ Π±Π΅Π· Π·Π½Π°ΠΊΠ°.
C ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ
C ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²Π°ΠΌ ΠΏΡΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠ½ΠΎΠ½ΠΈΠΌΠΎΠ².
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΏΡΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΡΠΈΠ½ΠΎΠ½ΠΈΠΌΠ°ΠΌΠΈ:
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ | Π‘ΠΈΠ½ΠΎΠ½ΠΈΠΌΡ | ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΡ | |
---|---|---|---|
Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» | int | ||
ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ | ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ int, ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ, ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ int | ||
Π΄Π»ΠΈΠ½Π½ΡΠΉ | Π΄Π»ΠΈΠ½Π½ΡΠΉ int, ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ, ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ int | ||
Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ | int, signed long long, signed long long int | ΠΠΎΡΡΡΠΏΠ½ΠΎ Ρ C99 |
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Π±Π΅Π· Π·Π½Π°ΠΊΠ° C
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ C ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ Π±Π΅Π· Π·Π½Π°ΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠ°ΠΌΡΡΠΈ, ΡΡΠΎ ΠΈ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ .
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ:
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ | Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ Π±Π΅Π· Π·Π½Π°ΠΊΠ° |
---|---|
char | unsigned char |
int | unsigned short |
long | unsigned long |
long long | unsigned long long |
C Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠ΅Π»ΡΡ ΡΠΈΠΏΠΎΠ²
C ΡΠΎΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° e.g., short
Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π΄Π²ΡΡ
Π±Π°ΠΉΡΠΎΠ², long
Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 4 Π±Π°ΠΉΡΠΎΠ². ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ C, ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ
ΡΠΈΠΏΠΎΠ² Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΠΏΠΎΡΡΠ΄ΠΊΡ:
sizeof (short) & lt; sizeof (int) & lt; sizeof (Π΄Π»ΠΈΠ½Π½ΡΠΉ) & lt; sizeof (long long) |
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΠΎΠ±ΡΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² Π² C:
Π’ΠΈΠΏ | Π Π°Π·ΠΌΠ΅Ρ ΠΏΠ°ΠΌΡΡΠΈ | ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ | ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
char | 1 Π±Π°ΠΉΡ | -128 | 127 | |||||||||||||||||||||||||||
Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» | 1 Π±Π°ΠΉΡ | 0 | 255 | |||||||||||||||||||||||||||
ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ | ||||||||||||||||||||||||||||||
ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ | 127 | |||||||||||||||||||||||||||||
int | 2 Π±Π°ΠΉΡΠ° ΠΈΠ»ΠΈ 4 Π±Π°ΠΉΡΠ° | -32,768 ΠΈΠ»ΠΈ -2,147,483,648 | 32,767 ΠΈΠ»ΠΈ 2,147,483,647 | |||||||||||||||||||||||||||
int Π±Π΅Π· Π·Π½Π°ΠΊΠ° | 65131 | 2 Π±Π°ΠΉΡΠ° ΠΈΠ»ΠΈ 4 Π±Π°ΠΉΡΠ° | ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ | 2 Π±Π°ΠΉΡΠ° | -32,768 | 32,767 | ||||||||||||||||||||||||
Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ | 0 | 65,535 | ||||||||||||||||||||||||||||
Π΄Π»ΠΈΠ½Π½ΡΠΉ | 4 Π±Π°ΠΉΡΠ° | -2 147 483 648 | 2 147 483 647 | |||||||||||||||||||||||||||
Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ | 4,25 | 4,25 | 4,2 95 | 8 Π±Π°ΠΉΡ | -9,223,372,036, 854,775,808 | 9,223,372,036, 854,775,807 | ||||||||||||||||||||||||
Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ° Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ | 8 Π±Π°ΠΉΡΠΎΠ² | 0 | 181460744673 ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ | 0 | 18,446,744,673 Π»ΠΈΠΌΠΈΡΠΎΠ².h Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» . ΠΡΠΎΡ ΡΠ°ΠΉΠ» Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ°ΠΊΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, INT_MIN , INT_MAX Π΄Π»Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°.ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ
Π Π½Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ:
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ C ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ
INT08-C. Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²ΡΠ΅ ΡΠ΅Π»ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ - ΡΡΠ°Π½Π΄Π°ΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ SEI CERT CΠ¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° (Ρ. Π. Π Π΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» Ρ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ). Π§Π°ΡΡΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ±Π·ΠΎΡΠ° ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°. Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ - ΡΡΠΎ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΡ Π² Β«ΠΠ³ΡΡ ΠΆΠΈΠ·Π½ΠΈΒ». ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΡΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΠΌΠΎΠ³ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΡΠΎΠ²Π΅ΡΡΠ΅ΠΌΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΡΠ°ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π²Π½Π΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΊΠ°ΠΊ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡΠ°ΡΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π»Π°, ΡΡΠΎ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΎΡΠΊΠ°Π·Π° Π² ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈ Π² ΡΠ΅Π°Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ . Π’ΠΈΠΏΠΈΡΠ½ΡΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠΊΠ°Π· ΠΏΡΡΠΊΠΎΠ²ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Ariane 5, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ΅Π» ΠΈΠ·-Π·Π° Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ²Π΅Π»Π° ΠΊ Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° [Lions 1996]. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ΅Ρ Π΄Π΅Π»Π°ΡΡ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π΄Π²ΡΡ : (1) ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΎ ΠΊΠ°ΠΊΠΎΠΌ-ΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΠ»ΠΈ (2) Π²ΡΠ΄Π°Π²Π°ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌΡΡ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» Π² ΡΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ°, ΠΊΠΎΠ³Π΄Π° ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠΎΠΊΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΡΡΠ΅ΠΌΠ° ΠΆΠ°Π»ΡΠ΅ΡΡΡ Π½Π° Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ Π²Π²ΠΎΠ΄ ΠΈ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ Π²Π²ΠΎΠ΄ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ). ΠΡΡΠ³ΠΈΠ΅ Π»ΡΡΡΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠΌ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΈΠ·Π±Π΅Π³Π°Ρ Π°ΡΠ°ΠΊΠΈ ΠΎΡΠΊΠ°Π·Π° Π² ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ, ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ Π²ΡΠ΄Π°Π²Π°ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ Π²ΠΎΠΏΡΠΎΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²Π΅ΡΠ½ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ»Π³ΠΎΡΠΈΡΠΌΡ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΠΈ modwrap, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ΅ΡΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ
ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π°Ρ
, Π΄Π°ΡΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ΅Π³Π΄Π° Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ
ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. ΠΡΠΎΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π»ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ Π‘Π΅ΠΌΠ°Π½ΡΠΈΠΊΠ° Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΠΠ»Ρ ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠΈ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ
Semant ics Mod Π‘Π΅ΠΌΠ°Π½ΡΠΈΠΊΠ° modwrap (ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠΎΠΉ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ), ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Β«ΠΎΠ±ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡΡΡΒ»."Π’ΠΎ Π΅ΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ 1 ΠΊ ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ΅Π»ΡΡ
ΡΠΈΡΠ΅Π» - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΡΠ΅Π»ΡΡ
ΡΠΈΡΠ΅Π» ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π Π°ΡΡΠΌΠΎΡΡΠΈΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΡΠΈΡΠ°Π½ΠΈΡ. ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π²ΠΎΠ΄ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π’Π΅ΠΏΠ΅ΡΡ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°Π±ΠΈΡΠ°Π΅Ρ ΠΡΠΈΠΌΠ΅Ρ Π½Π΅ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° Π ΡΡΠΎΠΌ Π½Π΅ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ int i = / * ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 32767 * /; / *... * / Π΅ΡΠ»ΠΈ (Ρ + 1 <= Ρ) { / * ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ * / } / * ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π²ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π΅ i + 1 * / Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Π½ΠΎΠ³ΠΎ long i = / * ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 32767 * /; / * ... * / / * Π’Π΅ΡΡ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ; i ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΡΡΠΎ ΠΎΠ½ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ * / / * ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π²ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π΅ i + 1 * / ΠΡΠ΅Π½ΠΊΠ° ΡΠΈΡΠΊΠΎΠ²Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²Π½Π΅ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π·Π°ΠΏΠΈΡΠΈ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
9 ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ | ΠΠ΅ΡΡΠΈΡ | Checker | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | ||||||||||||||||||||||
AstrΓ©e | 20.10 | ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ | ΠΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½ΠΎ | |||||||||||||||||||||||||||
Axivion Bauhaus Suite | CertC-INT08 | |||||||||||||||||||||||||||||
9014IZ 0 | 9147 914IZ 40. ADDOFLOW ALLOC.SIZE.IOFLOW ALLOC.SIZE.MULOFLOW ALLOC.SIZE.SUBUFLOW MISC.MEM.SIZE.ADDOFLOW MISC.MEM.SIZE.BAD MISC.MEM.SIZE.MULOFLOW MISC.MEM.SIZE.SUBUFLOW | ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ ΠΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ Π Π°Π·ΠΌΠ΅Ρ ΠΡΡΠΈΡΠ°Π½ΠΈΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΡΠ³ΡΠΌΠ΅Π½Ρ Π½Π΅ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΡΡΠΈΡΠ°Π½ΠΈΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ°Π·ΠΌΠ΅ΡΠ° | ||||||||||||||||||||||||||||
ΠΠΎΠΌΠΏΠ°Ρ / ROSE | ΠΠΎΠΆΠ΅Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΡΡΠ΅ΠΌ ΠΎΡΠΌΠ΅ΡΠΊΠΈ Π»ΡΠ±ΠΎΠ³ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π³ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½ΠΈΡΡΡΡ.ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ | |||||||||||||||||||||||||||||
Helix QAC | C2800, C2801, C2802, C2803, C2910, C2911, C2912, C2913 | |||||||||||||||||||||||||||||
ΠΠ°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² LDRA | 9.7.1 | 488 S, 493 S, 493 S | Π§Π°ΡΡΠΈΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ | |||||||||||||||||||||||||||
Π’Π΅ΡΡ Parasoft C / C ++ | CERT_C-INT08-a | ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Avoid15 | ||||||||||||||||||||||||||||
PC-lint Plus | 648, 650, 679, 680, 776, | Π§Π°ΡΡΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ | ||||||||||||||||||||||||||||
Polyspace Bug Finder | 914.INT08-C | ΠΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ (ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠΎΠΊΡΡΡΠ°) | ||||||||||||||||||||||||||||
PRQA QA-C | 9.7 | 2800,2801,2802,2803, 2910, 2911,2912,2913 | Π§Π°ΡΡΠΈΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ |
Π‘Π²ΡΠ·Π°Π½Π½ΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ
ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, Π²ΠΎΠ·Π½ΠΈΠΊΡΠΈΠ΅ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°, Π½Π° Π²Π΅Π±-ΡΠ°ΠΉΡΠ΅ CERT.
ΠΠΈΠ±Π»ΠΈΠΎΠ³ΡΠ°ΡΠΈΡ
Home / Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° 10.2 ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ Π² ARM C ΠΈ C ++ΠΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π² ARM C ΠΈ C ++: Π Π°Π·ΠΌΠ΅Ρ ΠΈ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΊΠ°Π·Π°Π½Ρ ΡΠ°Π·ΠΌΠ΅ΡΡ Π’Π°Π±Π»ΠΈΡΠ° 10-2 Π Π°Π·ΠΌΠ΅Ρ ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
ΠΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°:
Π¦Π΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄ΠΎ Π΄Π²ΡΡ
. ΠΠΈΠ·ΠΊΠΈΠΉ ΠΠΎΠΏΠ»Π°Π²ΠΎΠΊΠΠ΅Π»ΠΈΡΠΈΠ½Ρ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ IEEE: ΠΠ»Ρ ΠΠ°ΡΡΠΈΠ²Ρ ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΊΠΎ Π²ΡΠ΅ΠΌ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΡ
|
ΠΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ (Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΏΠΎ Java β’> ΠΠ·ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ·ΡΠΊΠ° Java> ΠΡΠ½ΠΎΠ²Ρ ΡΠ·ΡΠΊΠ°)
Π―Π·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Java ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ½Π°ΡΠ°Π»Π° ΠΎΠ±ΡΡΠ²Π»Π΅Π½Ρ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. ΠΡΠΎ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠ° ΠΈ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΊΠ°ΠΊ Π²Ρ ΡΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ:
ΠΡΠΎ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅, ΡΡΠΎ ΠΏΠΎΠ»Π΅ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«ΡΠ΅ΡΡΠ΅ΡΠ½ΡΒ» ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΈΠΌΠ΅Π΅Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Β«1Β».Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Ρ Π½Π΅ΠΉ. ΠΠΎΠΌΠΈΠΌΠΎ int
, ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Java ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΅ΡΠ΅ ΡΠ΅ΠΌΡ Π΄ΡΡΠ³ΠΈΡ
ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΡ
ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
. ΠΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠΉ ΡΠΈΠΏ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠ·ΡΠΊΠΎΠΌ ΠΈ Π½Π°Π·Π²Π°Π½ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ. ΠΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ ΡΠ°Π·Π΄Π΅Π»ΡΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ. Π―Π·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Java ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²ΠΎΡΠ΅ΠΌΡ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΡ
ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
:
Π±Π°ΠΉΡ : Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ
Π±Π°ΠΉΡ
ΡΠ²Π»ΡΠ΅ΡΡΡ 8-Π±ΠΈΡΠΎΠ²ΡΠΌ ΡΠ΅Π»ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΎ Π΄Π²ΡΡ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ.ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ -128 ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 127 (Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ). Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡΠ±Π°ΠΉΡ
ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π΄Π»Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΠΏΠ°ΠΌΡΡΠΈ Π² Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΌΠ°Ρ .
ΠΌΠ°ΡΡΠΈΠ²Ρ, Π³Π΄Π΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²Π°ΠΆΠ½Π° ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΠΌΠ΅ΡΡΠΎint
, Π³Π΄Π΅ ΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΏΡΠΎΡΡΠ½ΠΈΡΡ Π²Π°Ρ ΠΊΠΎΠ΄; ΡΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½, ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΠΆΠΈΡΡ ΡΠΎΡΠΌΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.short : Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ
short
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ 16-Π±ΠΈΡΠΎΠ²ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ Π² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅.ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ -32 768 ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 32 767 (Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ). ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ±Π°ΠΉΡΠΎΠΌ
, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΠ΅ ΠΆΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π°: Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉint : ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
int
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ 32-Π±ΠΈΡΠ½ΠΎΠ΅ Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΎ Π΄Π²ΡΡ , ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ -2 31 ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 2 31 -1. Π Java SE 8 ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡint
Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ 32-Π±ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π±Π΅Π· Π·Π½Π°ΠΊΠ°, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0 ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 2 32 -1.ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠ»Π°ΡΡ Integer, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡint
ΠΊΠ°ΠΊ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±Π΅Π· Π·Π½Π°ΠΊΠ°. Π‘ΠΌ. Π Π°Π·Π΄Π΅Π» Β«Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΠΊΠ»Π°ΡΡΡΒ» Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊcompareUnsigned
,diverUnsigned
ΠΈ Ρ. Π., ΠΡΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π²
Integer
ΠΠ»Π°ΡΡ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ ΡΠ΅Π»ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ Π±Π΅Π· Π·Π½Π°ΠΊΠ°.long : Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ
long
- ΡΡΠΎ 64-Π±ΠΈΡΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΎ Π΄Π²ΡΡ . ΠΠ»ΠΈΠ½Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ -2 63 ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 2 63 -1.Π Java SE 8 ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡlong
Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ 64-Π±ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° long, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0 ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 2 64 -1. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠΎΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡΠΆΠ΅Π½ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΈΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΡΠ΅ΠΌ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρint
. Π
Long ΠΠ»Π°ΡΡ
ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ°ΠΊΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠ°ΠΊcompareUnsigned
,DivideUnsigned
ΠΈ Ρ. Π. ΠΠ»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π΄Π»Ρ Π΄Π»ΠΈΠ½Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π±Π΅Π· Π·Π½Π°ΠΊΠ°.Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ : Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ
Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ 32-Π±ΠΈΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ ΠΎΠ΄ΠΈΠ½Π°ΡΠ½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΠΈ IEEE 754.ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π²ΡΡ ΠΎΠ΄ΠΈΡ Π·Π° ΡΠ°ΠΌΠΊΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ, Π½ΠΎ ΡΠΊΠ°Π·Π°Π½ Π²
Π Π°Π·Π΄Π΅Π» Β«Π’ΠΈΠΏΡ, ΡΠΎΡΠΌΠ°ΡΡ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉΒ» Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ·ΡΠΊΠ° Java. ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌΠΈ Π΄Π»ΡΠ±Π°ΠΉΡ
ΠΈΠΊΠΎΡΠΎΡΠΊΠΎΠ³ΠΎ
, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ
(Π²ΠΌΠ΅ΡΡΠΎdouble
), Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΏΠ°ΠΌΡΡΡ Π² Π±ΠΎΠ»ΡΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΡΠΈΡΠ΅Π» Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ. ΠΡΠΎΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π²Π°Π»ΡΡΠ°. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
java.math.BigDecimal Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ.Numbers and Strings ΠΎΡ Π²Π°ΡΡΠ²Π°Π΅ΡBigDecimal,
ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΎΠΉ Java.double : ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
double
ΡΠ²Π»ΡΠ΅ΡΡΡ 64-Π±ΠΈΡΠ½ΡΠΌ IEEE 754 Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΠΈ. ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π²ΡΡ ΠΎΠ΄ΠΈΡ Π·Π° ΡΠ°ΠΌΠΊΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ, Π½ΠΎ ΡΠΊΠ°Π·Π°Π½ Π²
Π Π°Π·Π΄Π΅Π» Β«Π’ΠΈΠΏΡ, ΡΠΎΡΠΌΠ°ΡΡ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉΒ» Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ·ΡΠΊΠ° Java. ΠΠ»Ρ Π΄Π΅ΡΡΡΠΈΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΡΠΎΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΠ°ΠΊ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ Π²ΡΡΠ΅, ΡΡΠΎΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π²Π°Π»ΡΡΠ°.boolean : Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ
boolean
ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ:true
ΠΈfalse
. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠΎΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΡΡΡ ΡΠ»Π°Π³ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈΡΡΠΈΠ½Π½ΡΠ΅ / Π»ΠΎΠΆΠ½ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ. ΠΡΠΎΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½ Π±ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π½ΠΎ Π΅Π³ΠΎ Β«ΡΠ°Π·ΠΌΠ΅ΡΒ» Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΡΠΎΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½.char : Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ
char
- ΡΡΠΎ ΠΎΠ΄ΠΈΠ½ 16-Π±ΠΈΡΠ½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» Unicode. ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅'\ u0000'
(ΠΈΠ»ΠΈ 0) ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅'\ uffff'
(ΠΈΠ»ΠΈ 65 535 Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ).
Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Π²ΠΎΡΡΠΌΠΈ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠΌ ΡΠΈΠΏΠ°ΠΌ Π΄Π°Π½Π½ΡΡ
, ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠΌ Π²ΡΡΠ΅, ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Java ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ
ΡΡΡΠΎΠΊ ΡΠ΅ΡΠ΅Π·
java.lang.String ΠΊΠ»Π°ΡΡ. ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² Π΄Π²ΠΎΠΉΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ String
; Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, String s = "ΡΡΠΎ ΡΡΡΠΎΠΊΠ°";
. String
ΠΠ±ΡΠ΅ΠΊΡΡ ΡΠ²Π»ΡΡΡΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΌΠΈ , ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ. ΠΠ»Π°ΡΡ String
ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠΌ ΡΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½ΡΡ
, Π½ΠΎ, ΡΡΠΈΡΡΠ²Π°Ρ ΠΎΡΠΎΠ±ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ Π΅ΠΌΡ ΡΠ·ΡΠΊΠΎΠΌ, Π²Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π±ΡΠ΄Π΅ΡΠ΅ Π΄ΡΠΌΠ°ΡΡ ΠΎ Π½Π΅ΠΌ ΠΊΠ°ΠΊ ΠΎ ΡΠ°ΠΊΠΎΠ²ΠΎΠΌ.ΠΡ ΡΠ·Π½Π°Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΎ ΠΊΠ»Π°ΡΡΠ΅ String
Π²
ΠΡΠΎΡΡΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π΄Π°Π½Π½ΡΡ
ΠΠ½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
ΠΠ΅ Π²ΡΠ΅Π³Π΄Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΠ»Ρ. ΠΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Ρ, Π½ΠΎ Π½Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ, Π±ΡΠ΄ΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ Π² ΡΠ°Π·ΡΠΌΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΠΎΠΎΠ±ΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ Π½ΡΠ»Ρ ΠΈΠ»ΠΈ null
, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ
. ΠΠ΄Π½Π°ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΊΠΈΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΏΠ»ΠΎΡ
ΠΈΠΌ ΡΡΠΈΠ»Π΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π²ΡΡΠ΅ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ .
Π’ΠΈΠΏ Π΄Π°Π½Π½ΡΡ | ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (Π΄Π»Ρ ΠΏΠΎΠ»Π΅ΠΉ) |
---|---|
Π±Π°ΠΉΡ | 0 |
ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ | 0 |
Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ | 0 |
Π΄Π»ΠΈΠ½Π½ΡΠΉ | 0L |
ΠΏΠΎΠΏΠ»Π°Π²ΠΎΠΊ | 0,0f |
Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ | 0,0d |
ΡΠΈΠΌΠ²ΠΎΠ» | '\ u0000' |
Π‘ΡΡΠΎΠΊΠ° (ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ) | null |
Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ | Π»ΠΎΠΆΡ |
ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ; ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ°ΠΌ, Π³Π΄Π΅ ΠΎΠ½Π° ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π°, Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π΅ΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΡΡΠ°ΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π΅. ΠΠΎΡΡΡΠΏ ΠΊ Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
ΠΠΈΡΠ΅ΡΠ°Π»Ρ
ΠΡ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ new
Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. ΠΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ - ΡΡΠΎ ΠΎΡΠΎΠ±ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π² ΡΠ·ΡΠΊ; ΠΎΠ½ΠΈ Π½Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΠΊΠ»Π°ΡΡΠ°. ΠΠΈΡΠ΅ΡΠ°Π» - ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ; Π»ΠΈΡΠ΅ΡΠ°Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅, Π½Π΅ ΡΡΠ΅Π±ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ.ΠΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π»ΠΈΡΠ΅ΡΠ°Π» ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°:
Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ = ΠΈΡΡΠΈΠ½Π°; char capitalC = 'C'; Π±Π°ΠΉΡ b = 100; ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ s = 10000; int i = 100000;
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π» ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ Π΄Π»ΠΈΠ½ΠΎΠΉ
, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ Π±ΡΠΊΠ²ΠΎΠΉ L
ΠΈΠ»ΠΈ l
; Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ ΡΠΈΠΏ int
. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΏΠΈΡΠ½ΡΡ Π±ΡΠΊΠ²Ρ L
, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΡΠΎΡΠ½ΡΡ Π±ΡΠΊΠ²Ρ l
ΡΡΡΠ΄Π½ΠΎ ΠΎΡΠ»ΠΈΡΠΈΡΡ ΠΎΡ ΡΠΈΡΡΡ 1
.
ΠΠ½Π°ΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ
ΡΠΈΠΏΠΎΠ² byte
, short
, int
ΠΈ long
ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΎΠ·Π΄Π°Π½Ρ ΠΈΠ· int
Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ². ΠΠ½Π°ΡΠ΅Π½ΠΈΡ ΡΠΈΠΏΠ° long
, Π²ΡΡ
ΠΎΠ΄ΡΡΠΈΠ΅ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° int
, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΎΠ·Π΄Π°Π½Ρ ΠΈΠ· long
Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ². Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΠ°Π·ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΡ
ΡΠΈΡΡΠ΅ΠΌ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ:
- ΠΠ΅ΡΡΡΠΈΡΠ½ΡΠΉ: ΠΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ 10, ΡΠΈΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· ΡΠΈΡΠ΅Π» ΠΎΡ 0 Π΄ΠΎ 9; ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ
- Π¨Π΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΠΉ: ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ 16, ΡΠΈΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· ΡΠΈΡΡ ΠΎΡ 0 Π΄ΠΎ 9 ΠΈ Π±ΡΠΊΠ² ΠΎΡ A Π΄ΠΎ F
- ΠΠ²ΠΎΠΈΡΠ½ΡΠΉ: ΠΠ°Π·Π° 2, ΡΠΈΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· ΡΠΈΡΠ΅Π» 0 ΠΈ 1 (Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄Π²ΠΎΠΈΡΠ½ΡΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ Π² Java SE 7 ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ )
ΠΠ»Ρ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π΅ΡΡΡΠΈΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π±ΡΠ΄Π΅Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ.ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ, ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ. ΠΡΠ΅ΡΠΈΠΊΡ 0x
ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΠΉ, Π° 0b
ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ:
// Π§ΠΈΡΠ»ΠΎ 26 Π² Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ int decVal = 26; // Π§ΠΈΡΠ»ΠΎ 26 Π² ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ int hexVal = 0x1a; // Π§ΠΈΡΠ»ΠΎ 26 Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ int binVal = 0b11010;
ΠΠΈΡΠ΅ΡΠ°Π»Ρ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ
ΠΠΈΡΠ΅ΡΠ°Π» Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ float
, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ Π±ΡΠΊΠ²ΠΎΠΉ F
ΠΈΠ»ΠΈ f
; Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΅Π³ΠΎ ΡΠΈΠΏ - double
ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΡΡ Π±ΡΠΊΠ²ΠΎΠΉ D
ΠΈΠ»ΠΈ d
.
Π’ΠΈΠΏΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ ( float
ΠΈ double
) ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ E ΠΈΠ»ΠΈ e (Π΄Π»Ρ ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ), F ΠΈΠ»ΠΈ f (32-Π±ΠΈΡΠ½ΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π» Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ) ΠΈ D ΠΈΠ»ΠΈ d (64-Π±ΠΈΡΠ½ΡΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Π»ΠΈΡΠ΅ΡΠ°Π»; ΡΡΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈ ΠΏΠΎ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ ΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ).
Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ d1 = 123,4; // ΡΠΎ ΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΈ d1, Π½ΠΎ Π² ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ d2 = 1.234e2; float f1 = 123.4f;
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΈ ΡΡΡΠΎΠΊΠΎΠ²ΡΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ
ΠΠΈΡΠ΅ΡΠ°Π»Ρ ΡΠΈΠΏΠΎΠ² char
ΠΈ String
ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π»ΡΠ±ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Unicode (UTF-16).ΠΡΠ»ΠΈ Π²Π°Ρ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΡΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΊΠΎΠ΄Π΅. ΠΡΠ»ΠΈ Π½Π΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Β«escape-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ UnicodeΒ», Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ '\ u0108'
(Π·Π°Π³Π»Π°Π²Π½Π°Ρ C Ρ ΡΠΈΡΠΊΡΠΌΡΠ»Π΅ΠΊΡΠΎΠΌ) ΠΈΠ»ΠΈ Β«S = Se \ u00F1orΒ»
(SΓ SeΓ±or Π½Π° ΠΈΡΠΏΠ°Π½ΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅). ΠΡΠ΅Π³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Β«ΠΎΠ΄ΠΈΠ½Π°ΡΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈΒ» Π΄Π»Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ
Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ²
ΠΈ Β«Π΄Π²ΠΎΠΉΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈΒ» Π΄Π»Ρ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ
Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ²
. Π£ΠΏΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Unicode ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΈΠΌΠ΅Π½Π°Ρ
ΠΏΠΎΠ»Π΅ΠΉ), Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π² Π»ΠΈΡΠ΅ΡΠ°Π»Π°Ρ
char
ΠΈΠ»ΠΈ String
.
Π―Π·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Java ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ
escape-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ² char
ΠΈ String
: \ b
(backspace), \ t
(tab), \ n
(ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ), \ f
(ΠΏΠΎΠ΄Π°ΡΠ° ΡΡΡΠ°Π½ΠΈΡΡ), \ r
(Π²ΠΎΠ·Π²ΡΠ°Ρ ΠΊΠ°ΡΠ΅ΡΠΊΠΈ), \ "
(Π΄Π²ΠΎΠΉΠ½Π°Ρ ΠΊΠ°Π²ΡΡΠΊΠ°), \ '
(ΠΎΠ΄ΠΈΠ½Π°ΡΠ½Π°Ρ ΠΊΠ°Π²ΡΡΠΊΠ°) ΠΈ \
(ΠΎΠ±ΡΠ°ΡΠ½Π°Ρ ΠΊΠΎΡΠ°Ρ ΡΠ΅ΡΡΠ°).
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π» null
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΡΡΠ»ΠΎΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. null
ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΎ Π»ΡΠ±ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΊΡΠΎΠΌΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΡ
ΡΠΈΠΏΠΎΠ². ΠΡ ΠΌΠ°Π»ΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ null
, ΠΊΡΠΎΠΌΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π΅Π³ΠΎ Π½Π°Π»ΠΈΡΠΈΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, null
ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ
Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΌΠ°ΡΠΊΠ΅ΡΠ°, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΎΠ±ΡΠ΅ΠΊΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠΎΠ±ΡΠΉ Π²ΠΈΠ΄ Π»ΠΈΡΠ΅ΡΠ°Π»Π°, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ° , ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΡΠ΅ΠΌ Π²Π·ΡΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠΈΠΏΠ° ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Β« .classΒ»
; Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ String.class
.ΠΡΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ (ΡΠΈΠΏΠ° , ΠΊΠ»Π°ΡΡ
), ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΌ ΡΠΈΠΏ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ Π² ΡΠΈΡΠ»ΠΎΠ²ΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»Π°Ρ
Π Java SE 7 ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΡ
Π²Π΅ΡΡΠΈΡΡ
Π»ΡΠ±ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ ( _
) ΠΌΠΎΠΆΠ΅Ρ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡΡ Π³Π΄Π΅ ΡΠ³ΠΎΠ΄Π½ΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈΡΡΠ°ΠΌΠΈ Π² ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΌ Π»ΠΈΡΠ΅ΡΠ°Π»Π΅. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ. Π΄Π»Ρ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ Π³ΡΡΠΏΠΏ ΡΠΈΡΡ Π² ΡΠΈΡΠ»ΠΎΠ²ΡΡ
Π»ΠΈΡΠ΅ΡΠ°Π»Π°Ρ
, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΡΡΠΈΡΡ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Π°Ρ ΠΊΠΎΠ΄ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΈΡΠ»Π° Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠΈΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ» ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ Π΄Π»Ρ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΡΡ Π½Π° Π³ΡΡΠΏΠΏΡ ΠΏΠΎ ΡΡΠΈ, Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΠΎΠΌΡ, ΠΊΠ°ΠΊ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π±Ρ Π·Π½Π°ΠΊ ΠΏΡΠ΅ΠΏΠΈΠ½Π°Π½ΠΈΡ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Π·Π°ΠΏΡΡΠ°Ρ, ΠΈΠ»ΠΈ ΠΏΡΠΎΠ±Π΅Π», Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ Π² ΡΠΈΡΠ»ΠΎΠ²ΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»Π°Ρ :
long creditCardNumber = 1234_5678_9012_3456L; long socialSecurityNumber = 999_99_9999L; float pi = 3.14_15F; Π΄Π»ΠΈΠ½Π½ΡΠΉ hexBytes = 0xFF_EC_DE_5E; Π΄Π»ΠΈΠ½Π½ΡΠ΅ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΠ΅ ΡΠ»ΠΎΠ²Π° = 0xCAFE_BABE; Π΄Π»ΠΈΠ½Π½ΡΠΉ maxLong = 0x7fff_ffff_ffff_ffffL; byte nybbles = 0b0010_0101; Π΄Π»ΠΈΠ½Π½ΡΠ΅ Π±Π°ΠΉΡΡ = 0b11010010_01101001_10010100_10010010;
ΠΠ½Π°ΠΊΠΈ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π²ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈΡΡΠ°ΠΌΠΈ; Π½Π΅Π»ΡΠ·Ρ ΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ :
- Π Π½Π°ΡΠ°Π»Π΅ ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠ΅ ΡΠΈΡΠ»Π°
- Π ΡΠ΄ΠΎΠΌ Ρ Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΉ Π·Π°ΠΏΡΡΠΎΠΉ Π² Π»ΠΈΡΠ΅ΡΠ°Π»Π΅ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ
- ΠΠΎ
F
ΠΈΠ»ΠΈL
ΡΡΡΡΠΈΠΊΡ - Π ΠΏΠΎΠ·ΠΈΡΠΈΡΡ , Π³Π΄Π΅ ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ ΡΡΡΠΎΠΊΠ° ΡΠΈΡΡ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡΡ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠ΅ ΠΈ Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ (Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΠ΅) Π² ΡΠΈΡΠ»ΠΎΠ²ΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»Π°Ρ :
// ΠΠ΅Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ: Π½Π΅Π»ΡΠ·Ρ ΡΡΠ°Π²ΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ // ΡΡΠ΄ΠΎΠΌ Ρ Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΎΠΉ ΠΏΠΎΠΏΠ»Π°Π²ΠΎΠΊ pi1 = 3_.1415F; // ΠΠ΅Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ: Π½Π΅Π»ΡΠ·Ρ ΡΡΠ°Π²ΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ // ΡΡΠ΄ΠΎΠΌ Ρ Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΎΠΉ float pi2 = 3._1415F; // ΠΠ΅Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ: Π½Π΅Π»ΡΠ·Ρ ΡΡΠ°Π²ΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ // ΠΏΠ΅ΡΠ΅Π΄ ΡΡΡΡΠΈΠΊΡΠΎΠΌ L long socialSecurityNumber1 = 999_99_9999_L; // ΠΠ (Π΄Π΅ΡΡΡΠΈΡΠ½ΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π») ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» x1 = 5_2; // ΠΠ΅Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ: Π½Π΅Π»ΡΠ·Ρ ΡΡΠ°Π²ΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ // Π ΠΊΠΎΠ½ΡΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»Π° int x2 = 52_; // ΠΠ (Π΄Π΅ΡΡΡΠΈΡΠ½ΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π») int x3 = 5_______2; // ΠΠ΅Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ: Π½Π΅Π»ΡΠ·Ρ ΡΡΠ°Π²ΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ // Π² ΠΏΡΠ΅ΡΠΈΠΊΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ 0x int x4 = 0_x52; // ΠΠ΅Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ: Π½Π΅Π»ΡΠ·Ρ ΡΡΠ°Π²ΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ // Π² Π½Π°ΡΠ°Π»Π΅ ΡΠΈΡΠ»Π° int x5 = 0x_52; // ΠΠ (ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π») int x6 = 0x5_2; // ΠΠ΅Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ: Π½Π΅Π»ΡΠ·Ρ ΡΡΠ°Π²ΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΡ // Π² ΠΊΠΎΠ½ΡΠ΅ ΡΠΈΡΠ»Π° int x7 = 0x52_;
4.5 - Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ ΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ·Π±Π΅Π³Π°ΡΡ
ΠΠ»Π΅ΠΊΡ, 23 Π°ΠΏΡΠ΅Π»Ρ 2019 Π³. | ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ nascardriver 20 ΡΠ΅Π²ΡΠ°Π»Ρ 2021 Π³.
Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π±Π΅Π· Π·Π½Π°ΠΊΠ°
ΠΠ° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΡΠΎΠΊΠ΅ (4.4 - Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ) ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π½Π°Π±ΠΎΡ ΡΠΈΠΏΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°, Π²ΠΊΠ»ΡΡΠ°Ρ 0.
C ++ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π±Π΅Π· Π·Π½Π°ΠΊΠ°. ΠΠ΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° - ΡΡΠΎ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» Π±Π΅Π· Π·Π½Π°ΠΊΠ°
Π§ΡΠΎΠ±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±Π΅Π· Π·Π½Π°ΠΊΠ°, ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ Π±Π΅Π· Π·Π½Π°ΠΊΠ° .ΠΠΎ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΎ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΈΠΏΠΎΠΌ:
Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ Π½Π°ΠΌ; Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ int ui; Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Π°Ρ Π΄Π»ΠΈΠ½Π½Π°Ρ ul; Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ Π΄Π»ΠΈΠ½Π½ΡΠΉ ull; |
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π±Π΅Π· Π·Π½Π°ΠΊΠ°
1-Π±Π°ΠΉΡΠΎΠ²ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ 0 Π΄ΠΎ 255. Π‘ΡΠ°Π²Π½ΠΈΡΠ΅ ΡΡΠΎ Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ 1-Π±Π°ΠΉΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ ΠΎΡ -128 Π΄ΠΎ 127. ΠΠ±Π° ΠΌΠΎΠ³ΡΡ Ρ ΡΠ°Π½ΠΈΡΡ 256 ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π΄Π»Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΈΡΠ΅Π», ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΌΠΎΠ³ΡΡ Ρ ΡΠ°Π½ΠΈΡΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π² Π΄Π²Π° ΡΠ°Π·Π° Π±ΠΎΠ»ΡΡΠ΅.
ΠΠΎΡ ΡΠ°Π±Π»ΠΈΡΠ°, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΠ°Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄Π»Ρ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» Π±Π΅Π· Π·Π½Π°ΠΊΠ°:
Π Π°Π·ΠΌΠ΅Ρ / ΡΠΈΠΏ | ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ |
---|---|
1 Π±Π°ΠΉΡ Π±Π΅Π· Π·Π½Π°ΠΊΠ° | ΠΎΡ 0 Π΄ΠΎ 255 |
2 Π±Π°ΠΉΡΠ° Π±Π΅Π· Π·Π½Π°ΠΊΠ° | 0 Π΄ΠΎ 65 535 |
4 Π±Π°ΠΉΡΠ° Π±Π΅Π· Π·Π½Π°ΠΊΠ° | 0 Π΄ΠΎ 4 294 967 295 |
8 Π±Π°ΠΉΡ Π±Π΅Π· Π·Π½Π°ΠΊΠ° | 0 Π΄ΠΎ 18 446 744 073 709 551 615 |
n-Π±ΠΈΡΠΎΠ²Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ 0 Π΄ΠΎ (2 n ) -1.
ΠΡΠ»ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π° Π½Π΅ ΡΡΠ΅Π±ΡΡΡΡΡ, ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π±Π΅Π· Π·Π½Π°ΠΊΠ° Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π΄Π»Ρ ΡΠ΅ΡΠ΅ΠΉ ΠΈ ΡΠΈΡΡΠ΅ΠΌ Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΎΠ±ΡΠ΅ΠΌΠΎΠΌ ΠΏΠ°ΠΌΡΡΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΌΠΎΠ³ΡΡ Ρ ΡΠ°Π½ΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠΈΡΠ΅Π», Π½Π΅ Π·Π°Π½ΠΈΠΌΠ°Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΈ Π½Π΅ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ
ΠΠΎΠ²ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡΡΠ°ΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΠΈ Π½Π΅ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠ΅. ΠΠΎΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ ΡΠ°Π·Π½ΠΈΡΡ: ΡΡΠΎΠ±Ρ ΠΎΡΠ»ΠΈΡΠΈΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π° ΠΎΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ , ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ Π·Π½Π°ΠΊ. ΠΡΠ»ΠΈ Π·Π½Π°ΠΊ Π½Π΅ ΡΠΊΠ°Π·Π°Π½, ΠΌΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌ, ΡΡΠΎ ΡΠΈΡΠ»ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅.Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ (ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ) ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ»ΠΈΡΠ°ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΎΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ. Π¦Π΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±Π΅Π· Π·Π½Π°ΠΊΠ° (ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±Π΅Π· Π·Π½Π°ΠΊΠ°) ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ, ΡΡΠΎ Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½Ρ.
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅
Π§ΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ ΠΌΡ ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠΈΡΠ»ΠΎ 280 (Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ 9 Π±ΠΈΡ) Π² 1-Π±Π°ΠΉΡΠΎΠ²ΠΎΠΌ (8-Π±ΠΈΡΠ½ΠΎΠΌ) ΡΠ΅Π»ΠΎΠΌ ΡΠΈΡΠ»Π΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ°? ΠΡΠ²Π΅Ρ - ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.
ΠΠ°ΠΊ Π½ΠΈ ΡΡΡΠ°Π½Π½ΠΎ, Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ΅ C ++ ΠΏΡΡΠΌΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ, ΡΡΠΎ Β«Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΡ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ΠΎΠ² Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½ΠΈΡΡΡΡΒ».ΠΡΠΎ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΌΠ½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΡ Π²Π°ΡΡΠ²Π°Π΅Ρ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠ΅, ΡΠ°ΠΊ ΠΈ Π½Π΅ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. Π£ΡΠΈΡΡΠ²Π°Ρ, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΎ Π±Ρ ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ C ++ ΠΎΠ± ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ.
ΠΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ° Π²ΡΡ ΠΎΠ΄ΠΈΡ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Ρ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΎΠ½ΠΎ Π΄Π΅Π»ΠΈΡΡΡ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ, ΠΏΡΠ΅Π²ΡΡΠ°ΡΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ ΡΠΈΠΏΠ°, ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΡΠ°ΡΠΎΠΊ.
Π§ΠΈΡΠ»ΠΎ 280 ΡΠ»ΠΈΡΠΊΠΎΠΌ Π²Π΅Π»ΠΈΠΊΠΎ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ 1-Π±Π°ΠΉΡΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ 0 Π΄ΠΎ 255. ΠΠ° 1 Π±ΠΎΠ»ΡΡΠ΅ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΡΠΈΡΠ»Π° ΡΠΈΠΏΠ° 256.Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΌΡ Π΄Π΅Π»ΠΈΠΌ 280 Π½Π° 256, ΠΏΠΎΠ»ΡΡΠ°Ρ 1 ΠΎΡΡΠ°ΡΠΎΠΊ 24. ΠΡΡΠ°ΡΠΎΠΊ 24 - ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ.
ΠΠΎΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠΏΠΎΡΠΎΠ± Π΄ΡΠΌΠ°ΡΡ ΠΎ ΡΠΎΠΌ ΠΆΠ΅. ΠΡΠ±ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, ΠΏΡΠ΅Π²ΡΡΠ°ΡΡΠ΅Π΅ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ΅ ΡΠΈΠΏΠΎΠΌ, ΠΏΡΠΎΡΡΠΎ Β«ΠΎΠ±ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡΒ» (ΠΈΠ½ΠΎΠ³Π΄Π° ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«ΠΎΠ±Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»ΡΒ» ΠΈΠ»ΠΈ, ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ Π½Π΅ΡΡΠ½ΠΎ, Β«Π½Π°ΡΡΡΠ΅Π½Π½ΠΎΡΡΡΒ»). 255 Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ 1-Π±Π°ΠΉΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°, ΠΏΠΎΡΡΠΎΠΌΡ 255 ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ. 256, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 0. 257 ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 1. 280 ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 24.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΡΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ 2-Π±Π°ΠΉΡΠΎΠ²ΡΠ΅ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°:
#include int main () { Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ x {65535}; // ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ 16-Π±ΠΈΡΠ½ΠΎΠ΅ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ std :: cout << "x was:" << x << '\ n'; Ρ = 65536; // 65536 Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ Π½Π°ΡΠ΅Π³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΠ°Π½ΠΈΠ΅ std :: cout << "x is now:" << x << '\ n'; Ρ = 65537; // 65537 Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ Π½Π°ΡΠ΅Π³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΠ°Π½ΠΈΠ΅ std :: cout << "x is now:" << x << '\ n'; Π²ΠΎΠ·Π²ΡΠ°Ρ 0; } |
ΠΠ°ΠΊ Π²Ρ Π΄ΡΠΌΠ°Π΅ΡΠ΅, ΠΊΠ°ΠΊΠΈΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ?
x Π±ΡΠ»ΠΎ: 65535 x ΡΠ΅ΠΉΡΠ°Ρ: 0 x ΡΠ΅ΠΉΡΠ°Ρ: 1
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π΅ΡΠ½ΡΡΡ Π² Π΄ΡΡΠ³ΡΡ ΡΡΠΎΡΠΎΠ½Ρ.0 ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅ 2-Π±Π°ΠΉΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°, ΡΠ°ΠΊ ΡΡΠΎ ΡΡΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ. -1 Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌΡΠΌ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ Π΄ΠΎ Π²Π΅ΡΡΠΈΠ½Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 65535. -2 ΠΎΠ±ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ Π΄ΠΎ 65534. Π ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
#include int main () { Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ x {0}; // Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ 2-Π±Π°ΠΉΡΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠ° std :: cout << "x was:" << x << '\ n'; Ρ = -1; // -1 Π²Π½Π΅ Π½Π°ΡΠ΅Π³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΠ°Π½ΠΈΠ΅ std :: cout << "x is now:" << x << '\ n'; Ρ = -2; // -2 Π²Π½Π΅ Π½Π°ΡΠ΅Π³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΠ°Π½ΠΈΠ΅ std :: cout << "x is now:" << x << '\ n'; Π²ΠΎΠ·Π²ΡΠ°Ρ 0; } |
x Π±ΡΠ»ΠΎ: 0 x ΡΠ΅ΠΉΡΠ°Ρ: 65535 x ΡΠ΅ΠΉΡΠ°Ρ: 65534
ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΠΊΠΎΠ΄ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°Ρ , ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ, ΡΡΠΎ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π» Π²ΡΡ ΠΎΠ΄ΠΈΡ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Ρ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°.ΠΡΠ»ΠΈ Π²Ρ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄, Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Β«ΠΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΊΠ°ΠΊ ΠΎΡΠΈΠ±ΠΊΠΈΒ».
ΠΠ½ΠΎΠ³ΠΈΠ΅ Π·Π°ΠΌΠ΅ΡΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π² ΠΈΡΡΠΎΡΠΈΠΈ Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³Ρ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΈ ΠΈΠ·-Π·Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Ρ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΌΠΈ ΡΠ΅Π»ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ. Π Π°ΡΠΊΠ°Π΄Π½ΠΎΠΉ ΠΈΠ³ΡΠ΅ Donkey Kong Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΉΡΠΈ ΡΡΠΎΠ²Π΅Π½Ρ Π²ΡΡΠ΅ 22 ΠΈΠ·-Π·Π° ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΈΠ·-Π·Π° ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΠΎΠ½ΡΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π»Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ²Π½Ρ.
Π ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠΉ ΠΈΠ³ΡΠ΅ Civilization ΠΠ°Π½Π΄ΠΈ Π±ΡΠ» ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΡΠ΅ΠΌ, ΡΡΠΎ ΡΠ°ΡΡΠΎ Π±ΡΠ» ΠΏΠ΅ΡΠ²ΡΠΌ, ΠΊΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ» ΡΠ΄Π΅ΡΠ½ΠΎΠ΅ ΠΎΡΡΠΆΠΈΠ΅, ΡΡΠΎ, ΠΏΠΎΡ ΠΎΠΆΠ΅, ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΡ Π΅Π³ΠΎ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΉ ΠΏΠ°ΡΡΠΈΠ²Π½ΠΎΡΡΠΈ.ΠΠ³ΡΠΎΠΊΠΈ ΠΏΠΎΠ»Π°Π³Π°Π»ΠΈ, ΡΡΠΎ ΡΡΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π°Π³ΡΠ΅ΡΡΠΈΠΈ ΠΠ°Π½Π΄ΠΈ, ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ Π½Π° 1, Π½ΠΎ Π΅ΡΠ»ΠΈ ΠΎΠ½ Π²ΡΠ±Π΅ΡΠ΅Ρ Π΄Π΅ΠΌΠΎΠΊΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠ°Π²ΠΈΡΠ΅Π»ΡΡΡΠ²ΠΎ, ΠΎΠ½ ΠΏΠΎΠ»ΡΡΠΈΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ -2. ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ Π΅Π³ΠΎ Π°Π³ΡΠ΅ΡΡΠΈΡ ΠΏΡΠ΅Π²ΡΡΠΈΡ 255, ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π΅Ρ Π΅Π³ΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π°Π³ΡΠ΅ΡΡΠΈΠ²Π½ΡΠΌ! ΠΠ΄Π½Π°ΠΊΠΎ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅Π΄Π°Π²Π½ΠΎ Π‘ΠΈΠ΄ ΠΠ΅ΠΉΠ΅Ρ (Π°Π²ΡΠΎΡ ΠΈΠ³ΡΡ) ΠΏΠΎΡΡΠ½ΠΈΠ», ΡΡΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ.
Π‘ΠΏΠΎΡΡ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΡΠΈΡΠ΅Π» Π±Π΅Π· Π·Π½Π°ΠΊΠ°
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ (ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΡΡΠΏΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Google) ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» Π±Π΅Π· Π·Π½Π°ΠΊΠ°.
ΠΡΠΎ Π² Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ Π΄Π²ΡΠΌΡ ΡΠΈΠΏΠ°ΠΌΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π²ΡΠ·Π²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π‘Π½Π°ΡΠ°Π»Π° ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π²ΡΡΠΈΡΠ°Π½ΠΈΠ΅ Π΄Π²ΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΡ ΡΠΈΡΠ΅Π», ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ 3 ΠΈ 5. 3 ΠΌΠΈΠ½ΡΡ 5 ΡΠ°Π²Π½ΠΎ -2, Π½ΠΎ -2 Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ ΠΊΠ°ΠΊ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ.
#include int main () { unsigned int x {3}; ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±Π΅Π· Π·Π½Π°ΠΊΠ° y {5}; std :: cout << x - y << '\ n'; Π²ΠΎΠ·Π²ΡΠ°Ρ 0; } |
ΠΠ° ΠΌΠ°ΡΠΈΠ½Π΅ Π°Π²ΡΠΎΡΠ° ΡΡΠ°, ΠΊΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, Π½Π΅Π²ΠΈΠ½Π½ΠΎ Π²ΡΠ³Π»ΡΠ΄ΡΡΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΡΠΎ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΈΠ·-Π·Π° ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° -2 ΠΊ ΡΠΈΡΠ»Ρ, Π±Π»ΠΈΠ·ΠΊΠΎΠΌΡ ΠΊ Π²Π΅ΡΡ
Π½Π΅ΠΌΡ ΠΏΡΠ΅Π΄Π΅Π»Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° 4-Π±Π°ΠΉΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°.ΠΠ±ΡΡΠ½ΡΠΉ Π½Π΅ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ΅ΡΠ΅Π½ΠΎΡ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎ ΡΠΌΠ΅Π½ΡΡΠ°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° -
. ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠΎΠ³ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΡΠ²ΡΡΡΡ ΠΏΠ΅ΡΠ»ΠΈ.
ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΏΡΠΈ ΡΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΠΈ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ ΠΈ Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π½Π΅ΠΏΡΠ΅Π΄Π²ΠΈΠ΄Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅. Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΎΠΏΠ΅ΡΠ°Π½Π΄ΠΎΠ² (x ΠΈΠ»ΠΈ y) ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½, Π΄ΡΡΠ³ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ (Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ) ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ Π² ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π±Π΅Π· Π·Π½Π°ΠΊΠ°, ΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅!
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ:
void doSomething (unsigned int x) { // ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠ΄ x ΡΠ°Π· std :: cout << "x is" << x << '\ n'; } int main () { doSomething (-1); Π²ΠΎΠ·Π²ΡΠ°Ρ 0; } |
ΠΠ²ΡΠΎΡ doSomething () ΠΎΠΆΠΈΠ΄Π°Π», ΡΡΠΎ ΠΊΡΠΎ-ΡΠΎ Π²ΡΠ·ΠΎΠ²Π΅Ρ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ.ΠΠΎ Π·Π²ΠΎΠ½ΡΡΠΈΠΉ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎ Π½ΠΎΠΌΠ΅ΡΡ -1 . Π§ΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅?
ΠΡΠ³ΡΠΌΠ΅Π½Ρ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ -1 Π½Π΅ΡΠ²Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ. -1 Π½Π΅ Π²Ρ ΠΎΠ΄ΠΈΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ Π΄ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° (Π²Π΅ΡΠΎΡΡΠ½ΠΎ, 4294967295). Π’ΠΎΠ³Π΄Π° Π²Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π±Π°Π»Π»ΠΈΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ. Π₯ΡΠΆΠ΅ ΡΠΎΠ³ΠΎ, Π½Π΅Ρ Ρ ΠΎΡΠΎΡΠ΅Π³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΡΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅. C ++ ΠΌΠΎΠΆΠ΅Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠΈΡΠ»Π° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ ΠΈ Π±Π΅Π· Π·Π½Π°ΠΊΠ°, Π½ΠΎ Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π²Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ ΡΠ²ΠΎΠΉ ΡΠΈΠΏ.
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°ΡΠΈΡΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅. ΠΠ±Π° Π±ΡΠ΄ΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ ΠΏΠΎΠ·ΠΆΠ΅.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Java) ΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, .NET) Π»ΠΈΠ±ΠΎ Π½Π΅ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ, Π»ΠΈΠ±ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅.
ΠΠΎΠ²ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π±Π΅Π· Π·Π½Π°ΠΊΠ° Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π΅ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°ΠΌΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. ΠΡΡΡΠ½ Π‘ΡΡΠ°ΡΡΡΡΡΠΏ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ C ++, ΡΠΊΠ°Π·Π°Π»: Β«ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ Π²ΠΌΠ΅ΡΡΠΎ int Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΅ΡΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±ΠΈΡΠ° Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» ΠΏΠΎΡΡΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΎΡΠΎΡΠ΅ΠΉ ΠΈΠ΄Π΅Π΅ΠΉΒ».
ΠΠ·Π±Π΅Π³Π°ΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΠ΅Π» Π±Π΅Π· Π·Π½Π°ΠΊΠ°, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΡΠΎΠ±ΡΡ ΡΠ»ΡΡΠ°Π΅Π² ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ.
ΠΠ΅ ΠΈΠ·Π±Π΅Π³Π°ΠΉΡΠ΅ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΈΡΠ΅Π», ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ΅Π½ Π±ΠΎΠ»ΡΡΠΈΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, ΡΠ΅ΠΌ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠΈΡΠ»ΠΎ ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΠΈΠ½Ρ, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΡΠΎΠΊΠ΅ (4.6 - Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΠΈΠ½Ρ ΠΈ size_t).
ΠΡΠ»ΠΈ Π²Ρ Π²ΡΠ΅ ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠΈΡΠ»Π°, ΠΏΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈΠ·Π±Π΅Π³Π°ΠΉΡΠ΅ ΡΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΡ ΠΈ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΡ ΡΠΈΡΠ΅Π».
Π’Π°ΠΊ Π³Π΄Π΅ ΠΆΠ΅ ΡΠ°Π·ΡΠΌΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠΈΡΠ»Π°?
Π C ++ Π²ΡΠ΅ Π΅ΡΠ΅ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΡΡΠ°Π΅Π², ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ (ΠΈΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ) ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠΈΡΠ»Π°.
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠΈΡΠ»Π° ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π±ΠΈΡΠ°ΠΌΠΈ (ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ Π² Π³Π»Π°Π²Π΅ O (ΡΡΠΎ Π·Π°Π³Π»Π°Π²Π½Π°Ρ Π±ΡΠΊΠ²Π° Β«ΠΎΒ», Π° Π½Π΅ Β«0Β»).
ΠΠΎ-Π²ΡΠΎΡΡΡ , Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΡ ΡΠΈΡΠ΅Π», Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²ΡΠ·Π°Π½Ρ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΠ΅ΠΉ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΡΡΠΎΠΌ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π² ΡΡΠΎΠΊΠ°Ρ ΠΏΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ².
Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΠ΅ Π΄Π»Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Arduino) ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° / ΠΏΠ°ΠΌΡΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΠ΅Π» Π±Π΅Π· Π·Π½Π°ΠΊΠ° Π±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΎ ΠΈ ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎ (Π° Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ) ΠΏΠΎ ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.