ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ БИ++

Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ ΠΏΠΎΡΠΎΠ±ΠΈΠ΅ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использовано имя Ρ‚ΠΈΠΏΠ° void, Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ ΠΏΠΎΠ»ΡŽ Π±ΠΈΡ‚ΠΎΠ² ΠΈΠ»ΠΈ Π±Ρ‹Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Если Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ выраТСния ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎ имя массива, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ являСтся Ρ€Π°Π·ΠΌΠ΅Ρ€ всСго массива (Ρ‚.Π΅. ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ числа элСмСнтов Π½Π° Π΄Π»ΠΈΠ½Ρƒ Ρ‚ΠΈΠΏΠ°), Π° Π½Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ указатСля, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ массива. Когда sizeof ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΊ ΠΈΠΌΠ΅Π½ΠΈ Ρ‚ΠΈΠΏΠ° структуры ΠΈΠ»ΠΈ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ БИ++ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ БИ++

Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС

ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Π‘И++

для студСнтов ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, систСмы, комплСксы ΠΈ ΡΠ΅Ρ‚ΠΈ Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Π΄Π½Π΅Π²Π½ΠΎΠΉ ΠΈ Π·Π°ΠΎΡ‡Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌ обучСния Π³. Π’ΠΎΠ»ΡŒΡΡ‚Ρ‚ΠΈ

Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для студСнтов Π΄Π½Π΅Π²Π½ΠΎΠΉ ΠΈ Π·Π°ΠΎΡ‡Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌ обучСния ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ «Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, систСмы, комплСксы ΠΈ ΡΠ΅Ρ‚ΠΈ», «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы» для изучСния ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΡΡ€Π΅Π΄ΡΡ‚Π² программирования с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ языка высокого уровня БИ++.

Боставил: ΠΊ.Ρ‚.Π½., Π΄ΠΎΡ†. Π’Ρ€ΡƒΠ±Π°Ρ‡Π΅Π²Π° Π‘.И.

Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использовано студСнтами ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ «Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, комплСксы, систСмы ΠΈ ΡΠ΅Ρ‚ΠΈ», «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы» ΠΏΡ€ΠΈ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ дисциплины «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Π‘И++.

Данная дисциплина читаСтся Π² Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ сСмСстрС, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° для овладСния знаниями, Π½Π°Π²Ρ‹ΠΊΠ°ΠΌΠΈ, умСниями Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° Π‘И, БИ++, ΠΏΡ€ΠΈΠ·Π²Π°Π½Π° ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ студСнтов ΠΊ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… курсов, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ, ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, систСмного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ Π΄Ρ€.

Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС содСрТит тСорСтичСский ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, задания ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‚, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ вопросы для самопровСрки.

Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ срСдств ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ…, Ρ‚Π°ΠΊ ΠΈ ΡΠΈΡΡ‚Π΅ΠΌΠ½Ρ‹Ρ…, ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ студСнту ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ знания, практичСскиС Π½Π°Π²Ρ‹ΠΊΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, систСмном администрировании.

Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС состоит ΠΈΠ· Ρ‚Ρ€Π΅Ρ… основных Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ². Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ прСдставлСн ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» основных конструкций языка, ΠΏΡ€ΠΈΠ΅ΠΌΠΎΠ² программирования Π½Π° Π‘И. Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ рассмотрСны основныС ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования: понятия, свойства, ΠΏΡ€ΠΈΠ΅ΠΌΡ‹ программирования с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ классов, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Ρ… классов, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π’Ρ€Π΅Ρ‚ΠΈΠΉ Ρ€Π°Π·Π΄Π΅Π» содСрТит ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ с ΠΏΠΎΡΡΠ½Π΅Π½ΠΈΡΠΌΠΈ.

Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС Π½Π΅ ΠΏΡ€Π΅Ρ‚Π΅Π½Π΄ΡƒΠ΅Ρ‚ Π½Π° ΠΏΠΎΠ»Π½ΠΎΡ‚Ρƒ излоТСния ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°, основной Ρ†Π΅Π»ΡŒΡŽ Π΅Π³ΠΎ являСтся ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΠΌΠΎΡ‰ΡŒ студСнтам Π² ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΠΈ ΡƒΡ‡Π΅Π±Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅.

Π Π°Π·Π΄Π΅Π» I. Π―Π·Ρ‹ΠΊ программирования БИ

1.1 ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ языка БИ

1.1.1 Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ символы

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ символов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΡΠ·Ρ‹ΠΊΠ΅ Π‘И ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° ΠΏΡΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏ.

Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для образования ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ². Π’ ΡΡ‚Ρƒ Π³Ρ€ΡƒΠΏΠΏΡƒ входят прописныС ΠΈ ΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ английского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ символ подчСркивания. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ прописныС ΠΈ ΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ символами, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹.

2. Π“Ρ€ΡƒΠΏΠΏΠ° прописных ΠΈ ΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Ρ… Π±ΡƒΠΊΠ² русского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π° ΠΈ Π°Ρ€Π°Π±ΡΠΊΠΈΠ΅ Ρ†ΠΈΡ„Ρ€Ρ‹.

3. Π—Π½Π°ΠΊΠΈ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы.

Π­Ρ‚ΠΈ символы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, с ΠΎΠ΄Π½ΠΎΠΉ стороны, для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ процСсса вычислСний, Π° Ρ Π΄Ρ€ΡƒΠ³ΠΎΠΉ, — для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ компилятору ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° инструкций (Ρ‚Π°Π±Π»ΠΈΡ†Π° 1.1).

Π’Π°Π±Π»ΠΈΡ†Π° 1.1 — Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹ языка

Π—Π½Π°ΠΊ, пояснСниС

Π—Π½Π°ΠΊ, пояснСниС

Π—Π½Π°ΠΊ, пояснСниС

запятая

) круглая скобка правая

. Ρ‚ΠΎΡ‡ΠΊΠ°

(круглая скобка лСвая

; Ρ‚ΠΎΡ‡ΠΊΠ° с Π·Π°ΠΏΡΡ‚ΠΎΠΉ

} фигурная скобка правая

: Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅

{ фигурная скобка лСвая

? Π²ΠΎΠΏΡ€ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π·Π½Π°ΠΊ

< мСньшС

' апостроф

> большС

! Π²ΠΎΡΠΊΠ»ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π·Π½Π°ΠΊ

[ квадратная скобка

| Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ Ρ‡Π΅Ρ€Ρ‚Π°

] квадратная скобка

/ дробная Ρ‡Π΅Ρ€Ρ‚Π°

# Π½ΠΎΠΌΠ΅Ρ€

обратная Ρ‡Π΅Ρ€Ρ‚Π°

% ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚

& ампСрсанд

^ логичСскоС Π½Π΅

+ плюс

= Ρ€Π°Π²Π½ΠΎ

— ΠΌΠΈΠ½ΡƒΡ

" ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ

* Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠ°

~ Ρ‚ΠΈΠ»ΡŒΠ΄Π°

4. Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ символы. К Ρ‚ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅ символов относятся: ΠΏΡ€ΠΎΠ±Π΅Π», символы табуляции, ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° строки, Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ, новая страница ΠΈ Π½ΠΎΠ²Π°Ρ строка. Π­Ρ‚ΠΈ символы ΠΎΡ‚Π΄Π΅Π»ΡΡŽΡ‚ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, опрСдСляСмыС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ относятся константы ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹. ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… символов рассматриваСтся компилятором ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ символ (ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ²).

5. ΠšΡ€ΠΎΠΌΠ΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π³Ρ€ΡƒΠΏΠΏ символов Π² ΡΠ·Ρ‹ΠΊΠ΅ Π‘И ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (Ρ‚Π°Π±Π»ΠΈΡ†Π° 1.2), Ρ‚. Π΅. ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² Ρ„ункциях Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ строится Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ использования ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ Π΄Ρ€ΠΎΠ±Π½ΠΎΠΉ Ρ‡Π΅Ρ€Ρ‚Ρ‹ () (ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ) ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠ΅ΠΉ латинских Π±ΡƒΠΊΠ² ΠΈ Ρ†ΠΈΡ„Ρ€.

Π’Π°Π±Π»ΠΈΡ†Π° 1.2 — Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ

НаимСнованиС

ШСснадцатСричная Π·Π°ΠΌΠ΅Π½Π°

a

Π—Π²ΠΎΠ½ΠΎΠΊ

b

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π½Π° ΡˆΠ°Π³

t

Π“ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°Ρ табуляция

n

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π½ΠΎΠ²ΡƒΡŽ строку

00A

v

Π’Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ табуляция

00B

r

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ

00C

f

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°

D"

ΠšΠ°Π²Ρ‹Ρ‡ΠΊΠΈ

'

Апостроф

Нольсимвол

\

ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ дробная Ρ‡Π΅Ρ€Ρ‚Π°

05C

ddd

Π‘ΠΈΠΌΠ²ΠΎΠ» Π½Π°Π±ΠΎΡ€Π° ΠΊΠΎΠ΄ΠΎΠ² ΠŸΠ­Π’Πœ Π² Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠΌ прСдставлСнии

НапримСр, 15 — Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Π°Ρ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ

xddd

Π‘ΠΈΠΌΠ²ΠΎΠ» Π½Π°Π±ΠΎΡ€Π° ΠΊΠΎΠ΄ΠΎΠ² ΠŸΠ­Π’Πœ Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΌ прСдставлСнии

НапримСр, x00D — ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Π°Ρ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Ρ… константах всСгда ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ всС Ρ‚Ρ€ΠΈ Ρ†ΠΈΡ„Ρ€Ρ‹ Π² ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. НапримСр, ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ n (ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π½ΠΎΠ²ΡƒΡŽ строку) ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ 10 ΠΈΠ»ΠΈ xA, Π½ΠΎ Π² ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Ρ… константах Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ всС Ρ‚Ρ€ΠΈ Ρ†ΠΈΡ„Ρ€Ρ‹, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС символ ΠΈΠ»ΠΈ символы, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ, Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π΅Π΅ Π½Π΅Π΄ΠΎΡΡ‚Π°ΡŽΡ‰Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ.

ΠšΡ€ΠΎΠΌΠ΅ опрСдСлСния ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, символ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ Π΄Ρ€ΠΎΠ±Π½ΠΎΠΉ Ρ‡Π΅Ρ€Ρ‚Ρ‹ () ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ символ продолТСния. Если Π·Π° () слСдуСт (n), Ρ‚ΠΎ ΠΎΠ±Π° символа ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ строка являСтся ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ. Π­Ρ‚ΠΎ свойство ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использовано для записи Π΄Π»ΠΈΠ½Π½Ρ‹Ρ… строк.

1.1.2 ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹

ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π°ΠΌΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ нСизмСняСмыС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ ΡΠ·Ρ‹ΠΊΠ΅ Π‘И Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Ρ‚ΠΈΠΏΠ° констант: Ρ†Π΅Π»Ρ‹Π΅ константы, константы с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой, ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ константы, строковыми Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹.

ЦСлая константа: это дСсятичноС, Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅ ΠΈΠ»ΠΈ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅ число, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ прСдставляСт Ρ†Π΅Π»ΡƒΡŽ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ„ΠΎΡ€ΠΌ: дСсятичной, Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠΉ ΠΈΠ»ΠΈ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΉ.

ДСсятичная константа состоит ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… дСсятичных Ρ†ΠΈΡ„Ρ€, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ пСрвая Ρ†ΠΈΡ„Ρ€Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π½ΡƒΠ»Π΅ΠΌ (Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС число Π±ΡƒΠ΄Π΅Ρ‚ воспринято ΠΊΠ°ΠΊ Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅). Π’ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Π°Ρ константа состоит ΠΈΠ· ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ нуля ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Ρ‹Ρ… Ρ†ΠΈΡ„Ρ€ (срСди Ρ†ΠΈΡ„Ρ€ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΊΠ° ΠΈ Π΄Π΅Π²ΡΡ‚ΠΊΠ°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ эти Ρ†ΠΈΡ„Ρ€Ρ‹ Π½Π΅ Π²Ρ…одят Π² Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΡƒΡŽ систСму счислСния). ШСстнадцатСричная константа начинаСтся с ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ 0Ρ… ΠΈΠ»ΠΈ 0Π₯ ΠΈ ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ ΠΎΠ΄Π½Ρƒ ΠΈΠ»ΠΈ нСсколько ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹Ρ… Ρ†ΠΈΡ„Ρ€ (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F). Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 1.3 прСдставлСны ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ†Π΅Π»Ρ‹Ρ… констант.

Π’Π°Π±Π»ΠΈΡ†Π° 1.3 — ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ†Π΅Π»Ρ‹Ρ… констант

ДСсятичная константа

Π’ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Π°Ρ константа

ШСстнадцатСричная константа

0x10

0x7F

Если трСбуСтся ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ†Π΅Π»ΡƒΡŽ константу, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π·Π½Π°ΠΊ «-» ΠΏΠ΅Ρ€Π΅Π΄ записью константы (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΡƒΠ½Π°Ρ€Π½Ρ‹ΠΌ минусом). НапримСр: -0x2A, -088, -16 .

КаТдой Ρ†Π΅Π»ΠΎΠΉ константС присваиваСтся Ρ‚ΠΈΠΏ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ прСобразования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹, Ссли константа ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡΡ…. Π’ΠΈΠΏ константы опрСдСляСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

— Π΄Π΅ΡΡΡ‚ΠΈΡ‡Π½Ρ‹Π΅ константы Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ со Π·Π½Π°ΠΊΠΎΠΌ, ΠΈΠΌ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ‚ся Ρ‚ΠΈΠΏ int (цСлая) ΠΈΠ»ΠΈ long (длинная цСлая) Π² ΡΠΎΠΎΡ‚вСтствии со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ константы. Если константа мСньшС 32 768, Ρ‚ΠΎ Π΅ΠΉ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ‚ся Ρ‚ΠΈΠΏ int Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС long.

— Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Ρ‹ΠΌ ΠΈ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹ΠΌ константам присваиваСтся Ρ‚ΠΈΠΏ int, unsigned int (бСззнаковая цСлая), long ΠΈΠ»ΠΈ unsigned long Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡ константы.

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΡŽΠ±ΡƒΡŽ Ρ†Π΅Π»ΡƒΡŽ константу ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏΠΎΠΌ long, достаточно Π² ΠΊΠΎΠ½Ρ†Π΅ константы ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π±ΡƒΠΊΠ²Ρƒ «l» ΠΈΠ»ΠΈ «L» .

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: 5l, 6l, 128L, 0105L, OX2A11L.

ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π° с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ — дСсятичноС число, прСдставлСнноС Π² Π²ΠΈΠ΄Π΅ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ с Π΄Π΅ΡΡΡ‚ΠΈΡ‡Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ ΠΈΠ»ΠΈ экспонСнтой.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΈΠ΄:

[ Ρ†ΠΈΡ„Ρ€Ρ‹ ]. Ρ†ΠΈΡ„Ρ€Ρ‹ ] [ Π• | e [ + | - ] Ρ†ΠΈΡ„Ρ€Ρ‹ ] .

Число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ состоит ΠΈΠ· Ρ†Π΅Π»ΠΎΠΉ ΠΈ Π΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ частС ΠΉ ΠΈ (ΠΈΠ»ΠΈ) экспонСнты. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ ΡƒΠ΄Π²ΠΎΠ΅Π½Π½ΠΎΠΉ точности (ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΈΠΏ double). Для опрСдСлСния ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ константноС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, состоящСС ΠΈΠ· Π·Π½Π°ΠΊΠ° минуса ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ константы.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: 115.75, 1.5Π•-2, -0.025, .075, -0.85Π•2

Бимвольная константа — прСдставляСтся символом, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ Π² Π°ΠΏΠΎΡΡ‚Ρ€ΠΎΡ„Ρ‹. Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ рассматриваСтся ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ символ, допустимо Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… константах. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ символьной константы являСтся числовой ΠΊΠΎΠ΄ символа.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

' '- ΠΏΡ€ΠΎΠ±Π΅Π», 'Q'- Π±ΡƒΠΊΠ²Π° Q, 'n' - символ Π½ΠΎΠ²ΠΎΠΉ строки, '\' - обратная дробная Ρ‡Π΅Ρ€Ρ‚Π°, 'v' - Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ табуляция.

Π‘ΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ константы ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΈΠΏ int ΠΈ ΠΏΡ€ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠΎΠ² Π΄ΠΎΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π·Π½Π°ΠΊΠΎΠΌ.

Бтроковая константа (Π»ΠΈΡ‚Π΅Ρ€Π°Π») — ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ строковыС ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡΠ½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ русского ΠΈ Π»Π°Ρ‚инского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ†ΠΈΡ„Ρ€Ρ‹, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ («). НапримСр: «Π¨ΠΊΠΎΠ»Π° № 26», «Π³ΠΎΡ€ΠΎΠ΄ Π’ΠΎΠ»ΡŒΡΡ‚Ρ‚ΠΈ».

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ всС ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ символы, ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ° («), обратная дробная Ρ‡Π΅Ρ€Ρ‚Π° () ΠΈ ΡΠΈΠΌΠ²ΠΎΠ» Π½ΠΎΠ²ΠΎΠΉ строки Π² ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²ΠΎΠΌ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π΅ ΠΈ Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½ΠΎΠΉ константС ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΌΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡΠΌΠΈ. КаТдая ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ прСдставляСтся ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ символ. НапримСр, ΠΏΡ€ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° «Π¨ΠΊΠΎΠ»Π° n № 26» Π΅Π³ΠΎ Ρ‡Π°ΡΡ‚ΡŒ «Π¨ΠΊΠΎΠ»Π°» Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½Π° Π½Π° ΠΎΠ΄Π½ΠΎΠΉ строкС, Π° Π²Ρ‚орая Ρ‡Π°ΡΡ‚ΡŒ «№ 26» Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ строкС. Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹ строкового Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² ΠΎΠ±Π»Π°ΡΡ‚ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти. Π’ ΠΊΠΎΠ½Π΅Ρ† ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ строкового Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° компилятором добавляСтся Π½ΡƒΠ»Π΅Π²ΠΎΠΉ символ, прСдставляСмый ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ .

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Π» ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ char[ ]. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ строка рассматриваСтся ΠΊΠ°ΠΊ массив символов. ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ Π²Π°ΠΆΠ½ΡƒΡŽ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ, число элСмСнтов массива Ρ€Π°Π²Π½ΠΎ числу символов Π² ΡΡ‚Ρ€ΠΎΠΊΠ΅ плюс 1, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½ΡƒΠ»Π΅Π²ΠΎΠΉ символ (символ ΠΊΠΎΠ½Ρ†Π° строки) Ρ‚Π°ΠΊΠΆΠ΅ являСтся элСмСнтом массива. ВсС строковыС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ компилятором ΠΊΠ°ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… строках. Π’Π°ΠΊΠΈΠ΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ использования ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ Π΄Ρ€ΠΎΠ±Π½ΠΎΠΉ Ρ‡Π΅Ρ€Ρ‚Ρ‹ ΠΈ ΠΊΠ»Π°Π²ΠΈΡˆΠΈ Π²Π²ΠΎΠ΄. ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ Ρ‡Π΅Ρ€Ρ‚Π° с ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ Π½ΠΎΠ²ΠΎΠΉ строки игнорируСтся компилятором, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ строка являСтся ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ.

НапримСр:

" строка Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ n

Π΄Π»ΠΈΠ½Ρ‹"

ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Π° Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρƒ «ΡΡ‚Ρ€ΠΎΠΊΠ° Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹» .

Для сцСплСния строковых Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ символ (ΠΈΠ»ΠΈ символы) ΠΏΡ€ΠΎΠ±Π΅Π»Π°. Если Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ строковых Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π°, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ, Ρ‚ΠΎ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ ΠΎΠ΄Π½Π° символьная строка. Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для формирования строковых Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ², Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΡ… Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠΉ строки.

1.1.3 Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ называСтся ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ†ΠΈΡ„Ρ€ ΠΈ Π±ΡƒΠΊΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… символов, ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΉ стоит Π±ΡƒΠΊΠ²Π° ΠΈΠ»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ символ. Для образования ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ строчныС ΠΈΠ»ΠΈ прописныС Π±ΡƒΠΊΠ²Ρ‹ латинского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°. Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ символа ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ символ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ (_). Π”Π²Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°, для образования ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ строчныС ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡΠ½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹, ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ.

НапримСр: abc, ABC, A128B, a128b .

Π’Π°ΠΆΠ½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ компилятор допускаСт любоС количСство символов Π² ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅, хотя Π·Π½Π°Ρ‡ΠΈΠΌΡ‹ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ 31 символ. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ создаСтся Π½Π° ΡΡ‚Π°ΠΏΠ΅ объявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, структуры ΠΈ Ρ‚. ΠΏ. послС этого Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°Ρ… Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π²Π°ΠΆΠ½Ρ‹Π΅ особСнности ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°.

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ словами, с Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ словами ΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ компилятора языка Π‘И.

Π’ΠΎ Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, слСдуСт ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ особоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ символа (_) ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ символа ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, построСнныС Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ, с ΠΎΠ΄Π½ΠΎΠΉ стороны, ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ систСмных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ (ΠΈΠ»ΠΈ) ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Π°, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΏΡ€ΠΈ использовании Ρ‚Π°ΠΊΠΈΡ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ нСпСрСносимыми.

Π’ Ρ‚Ρ€Π΅Ρ‚ΡŒΠΈΡ…, Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для опрСдСлСния Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π½Π°Π»ΠΎΠΆΠ΅Π½Ρ‹ ограничСния, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ связСй (ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ использованиС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… вСрсий Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° связСй ΠΈΠ»ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ трСбования Π½Π° ΠΈΠΌΠ΅Π½Π° Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…).

1.1.4 ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова — это Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π΄Π΅Π»Π΅Π½Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ смыслом. Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΡΠΎΠΎΡ‚вСтствии со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ извСстным компилятору языка Π‘И.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ список ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов языка: auto, double, int, struct, break, else, long, switch, register, tupedef, char, extern, return, void, case, float, unsigned, default, for, signed, union, do, if, sizeof, volatile, continue, enum, short, while

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² Π²Π΅Ρ€ΡΡΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ языка БИ, Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ словами ΡΠ²Π»ΡΡŽΡ‚ΡΡ: _asm, fortran, near, far, cdecl, huge, paskal, interrupt.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ².

1.1.5 ИспользованиС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Π² Ρ‚СкстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ — это Π½Π°Π±ΠΎΡ€ символов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ компилятором. На ΡΡ‚ΠΎΡ‚ Π½Π°Π±ΠΎΡ€ символов, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ограничСния. Π’Π½ΡƒΡ‚Ρ€ΠΈ Π½Π°Π±ΠΎΡ€Π° символов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдставляСт ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… символов, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… Π½Π°Ρ‡Π°Π»ΠΎ ΠΈ ΠΊΠΎΠ½Π΅Ρ† ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π², соотвСтствСнно (/* ΠΈ */). ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π² Π‘И ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ΡΡ «//», «/*…*/». ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΠ΄Π½Ρƒ строку, Ρ‚Π°ΠΊ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΎ.

НапримСр:

/* ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ */

/* Π½Π°Ρ‡Π°Π»ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° */

ΠΈΠ»ΠΈ

/* ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π°Π΄ΠΎ Π±Ρ‹Ρ‚ΡŒ остороТным, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, которая игнорируСтся компилятором, Π½Π΅ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΠ»ΠΈΡΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ */

ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²:

/* ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ /* Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΡ€Π°Π΅Π²ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ */ */

1.2 Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΈΡ… ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠ΅

Π’Π°ΠΆΠ½ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ языка Π‘И ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… языков являСтся отсутствиС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° умолчания, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π½Π΅ΠΎΠ±Ρ…одимости объявлСния всСх ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ явно вмСстС с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΈΠΌ Ρ‚ΠΈΠΏΠΎΠ².

ОбъявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚:

[спСцификатор-класса-памяти] спСцификатор-Ρ‚ΠΈΠΏΠ°

ΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒ [=ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΎΡ€] [, ΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒ [= ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΎΡ€] ]

ΠžΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒ — ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ простой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π»ΠΈΠ±ΠΎ Π±ΠΎΠ»Π΅Π΅ слоТная конструкция с ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹ΠΌΠΈ скобками, ΠΊΡ€ΡƒΠ³Π»Ρ‹ΠΌΠΈ скобками ΠΈΠ»ΠΈ Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΎΠΉ (Π½Π°Π±ΠΎΡ€ΠΎΠΌ Π·Π²Π΅Π·Π΄ΠΎΡ‡Π΅ΠΊ).

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚ΠΈΠΏΠ° — ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ нСсколько ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… Ρ‚ΠΈΠΏ объявляСмой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π’ ΡΠ·Ρ‹ΠΊΠ΅ Π‘И имССтся стандартный Π½Π°Π±ΠΎΡ€ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ (ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅) Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Π˜Π½ΠΈΡ†ΠΈΠ°Ρ‚ΠΎΡ€ — Π·Π°Π΄Π°Π΅Ρ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ список Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ (ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅) присваиваСтся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΡ€ΠΈ объявлСнии.

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ класса памяти — опрСдСляСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов языка Π‘И: auto, register, static, extern ΠΈ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒΡΡ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ΄ ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅ΠΌΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, с ΠΎΠ΄Π½ΠΎΠΉ стороны, Π°, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости этой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Ρ‚. Π΅. ΠΈΠ· ΠΊΠ°ΠΊΠΈΡ… частСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΊ Π½Π΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ.

1.2.1 ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова для опрСдСлСния основных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… прСдставлСны Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 2.1.

Π’Π°Π±Π»ΠΈΡ†Π° 2.1 — ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова для опрСдСлСния основных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…

Π¦Π΅Π»Ρ‹ΠΉ Ρ‚ΠΈΠΏ

ВСщСствСнный Ρ‚ΠΈΠΏ

char

float

int

double

short

long double

long

signed

unsigned

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ любого Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ объявлСна ΠΊΠ°ΠΊ нСмодифицируСмая. Π­Ρ‚ΠΎ достигаСтся Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова const ΠΊ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ-Ρ‚ΠΈΠΏΠ°. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ с Ρ‚ΠΈΠΏΠΎΠΌ const ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Π΄Π°Π½Π½Ρ‹Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния, Ρ‚. Π΅. этой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ присвоСно Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ссли послС слова const отсутствуСт спСцификатор-Ρ‚ΠΈΠΏΠ°, Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ся спСцификатор Ρ‚ΠΈΠΏΠ° int. Если ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово const стоит ΠΏΠ΅Ρ€Π΅Π΄ объявлСниСм составных Ρ‚ΠΈΠΏΠΎΠ² (массив, структура, смСсь, пСрСчислСниС), Ρ‚ΠΎ ΡΡ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ²Π»ΡΡ‚ΡŒΡΡ Π½Π΅ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ, Ρ‚. Π΅. Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ присвоСно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

const double A=1.23E-2;

const B=456; (подразумСваСтся const int B=456)

Π¦Π΅Π»Ρ‹ΠΉ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…. Для опрСдСлСния Π΄Π°Π½Π½Ρ‹Ρ… Ρ†Π΅Π»ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ области памяти, выдСляСмой ΠΏΠΎΠ΄ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ (Ρ‚Π°Π±Π»ΠΈΡ†Π° 2.2).

Π’Π°Π±Π»ΠΈΡ†Π° 2.2 — Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ области памяти, выдСляСмой ΠΏΠΎΠ΄ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

Π’ΠΈΠΏ

Π Π°Π·ΠΌΠ΅Ρ€ памяти Π² Π±Π°ΠΉΡ‚Π°Ρ…

Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

char

ΠΎΡ‚ -128 Π΄ΠΎ 127

int

для IBM XT, AT, SX, DX 2

ΠΎΡ‚ -32 768 Π΄ΠΎ 32 767

short

ΠΎΡ‚ -32 768 Π΄ΠΎ 32 767

long

ΠΎΡ‚ -2 147 483 648 Π΄ΠΎ 2 147 483 647

unsigned char

oΡ‚ 0 Π΄ΠΎ 255

unsigned int

для IBM XT, AT, SX, DX

unsigned short

ΠΎΡ‚ 0 Π΄ΠΎ 65 535

unsigned long

ΠΎΡ‚ 0 Π΄ΠΎ 4 294 967 295

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова signed ΠΈ unsigned Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹. Они ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, ΠΊΠ°ΠΊ интСрпрСтируСтся Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Π±ΠΈΡ‚ объявляСмой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Ρ‚. Π΅., Ссли ΡƒΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово unsigned, Ρ‚ΠΎ Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Π±ΠΈΡ‚ интСрпрСтируСтся ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ числа, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Π±ΠΈΡ‚ интСрпрСтируСтся ΠΊΠ°ΠΊ Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ отсутствия ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова unsigned цСлая пСрСмСнная считаСтся Π·Π½Π°ΠΊΠΎΠ²ΠΎΠΉ. Π’ Ρ‚ΠΎΠΌ случаС, Ссли спСцификатор Ρ‚ΠΈΠΏΠ° состоит ΠΈΠ· ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° signed ΠΈΠ»ΠΈ unsigned ΠΈ Π΄Π°Π»Π΅Π΅ слСдуСт ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Ρ‚ΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ пСрСмСнная Ρ‚ΠΈΠΏΠ° int.

НапримСр:

unsigned int n;

int c; (подразумСваСтся signed int c);

unsigned d; (подразумСваСтся unsigned int d);

signed f; (подразумСваСтся signed int f).

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€-Ρ‚ΠΈΠΏΠ° char ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для прСдставлСния символа (ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° прСдставлСниС символов) ΠΈΠ»ΠΈ для объявлСния строковых Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ². Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ‚ΠΈΠΏΠ° char являСтся ΠΊΠΎΠ΄ (Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 1 Π±Π°ΠΉΡ‚), ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ прСдставляСмому символу. Для прСдставлСния символов русского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°, ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚ΠΈΠΏΠ° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΈΠ΄ unsigned char, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄Ρ‹ русских Π±ΡƒΠΊΠ² ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‚ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ 127.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π² ΡΠ·Ρ‹ΠΊΠ΅ Π‘И Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ прСдставлСниС Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ-Ρ‚ΠΈΠΏΠ° int ΠΈ unsigned int. Π Π°Π·ΠΌΠ΅Ρ€ памяти для ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ Ρ‚ΠΈΠΏΠ° signed int опрСдСляСтся Π΄Π»ΠΈΠ½ΠΎΠΉ машинного слова, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…. Π’Π°ΠΊ, Π½Π° 16-Ρ‚ΠΈ разрядных ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… Ρ€Π°Π·ΠΌΠ΅Ρ€ слова Ρ€Π°Π²Π΅Π½ 2-ΠΌ Π±Π°ΠΉΡ‚Π°ΠΌ, Π½Π° 32-Ρ… разрядных ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…, соотвСтствСнно, 4-ΠΌ Π±Π°ΠΉΡ‚Π°ΠΌ, Ρ‚. Π΅. Ρ‚ΠΈΠΏ int эквивалСнтСн Ρ‚ΠΈΠΏΠ°ΠΌ short int, ΠΈΠ»ΠΈ long int Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ ΠŸΠ­Π’Πœ.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΎΠ΄Π½Π° ΠΈ Ρ‚Π° ΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ. Для опрСдСлСния Π΄Π»ΠΈΠ½Ρ‹ памяти, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ sizeof языка БИ, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΡƒΡŽ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Ρ‹ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°-Ρ‚ΠΈΠΏΠ°.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ: sizeof(Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅).

НапримСр:

a = sizeof (int);

b = sizeof (long int);

c = sizeof (unsigned long);

d = sizeof (short);

Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ выраТСния ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован любой ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Π»ΠΈΠ±ΠΎ имя Ρ‚ΠΈΠΏΠ°, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ΅ Π² ΡΠΊΠΎΠ±ΠΊΠΈ.

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использовано имя Ρ‚ΠΈΠΏΠ° void, Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ ΠΏΠΎΠ»ΡŽ Π±ΠΈΡ‚ΠΎΠ² ΠΈΠ»ΠΈ Π±Ρ‹Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Если Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ выраТСния ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎ имя массива, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ являСтся Ρ€Π°Π·ΠΌΠ΅Ρ€ всСго массива (Ρ‚.Π΅. ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ числа элСмСнтов Π½Π° Π΄Π»ΠΈΠ½Ρƒ Ρ‚ΠΈΠΏΠ°), Π° Π½Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ указатСля, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ массива. Когда sizeof ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΊ ΠΈΠΌΠ΅Π½ΠΈ Ρ‚ΠΈΠΏΠ° структуры ΠΈΠ»ΠΈ объСдинСния ΠΈΠ»ΠΈ ΠΊ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ, ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΌΡƒ Ρ‚ΠΈΠΏ структуры ΠΈΠ»ΠΈ объСдинСния, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ являСтся фактичСский Ρ€Π°Π·ΠΌΠ΅Ρ€ структуры ΠΈΠ»ΠΈ объСдинСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ участки памяти, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для выравнивания элСмСнтов структуры ΠΈΠ»ΠΈ объСдинСния. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, этот Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠΎΠΌΡƒ ΠΏΡƒΡ‚Π΅ΠΌ слоТСния Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² элСмСнтов структуры.

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ Ρ‚Π°ΠΊΠΆΠ΅, Ρ‡Ρ‚ΠΎ Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Ρ‹Π΅ ΠΈ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹Π΅ константы Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ unsigned. Π­Ρ‚ΠΎ достигаСтся ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ прСфикса u ΠΈΠ»ΠΈ U ΠΏΠΎΡΠ»Π΅ константы, константа Π±Π΅Π· этого прСфикса считаСтся Π·Π½Π°ΠΊΠΎΠ²ΠΎΠΉ.

НапримСр:

0xA8C (int signed);

01786l (long signed);

0xF7u (int unsigned);

Π”Π°Π½Π½Ρ‹Π΅ ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ°. Для ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹-Ρ‚ΠΈΠΏΠ°: float, double, long double (Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… рСализациях языка объявлСниС long double отсутствуСт).

Π’Π΅Π»ΠΈΡ‡ΠΈΠ½Π° с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ-Ρ‚ΠΈΠΏΠ° float Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 4 Π±Π°ΠΉΡ‚Π°. Из Π½ΠΈΡ… 1 Π±ΠΈΡ‚ отводится для Π·Π½Π°ΠΊΠ°, 8 Π±ΠΈΡ‚ для ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠΉ экспонСнты ΠΈ 23 Π±ΠΈΡ‚Π° для мантиссы. ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ Π±ΠΈΡ‚ мантиссы всСгда Ρ€Π°Π²Π΅Π½ 1, поэтому ΠΎΠ½ Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся, Π² ΡΠ²ΡΠ·ΠΈ с ΡΡ‚ΠΈΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π²Π΅Π½ ΠΎΡ‚ 3.14E-38 Π΄ΠΎ 3.14E+38.

Π’Π΅Π»ΠΈΡ‡ΠΈΠ½Π° Ρ‚ΠΈΠΏΠ° double Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 8 Π±Π°ΠΉΡ‚ Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ. Π•Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ float. Π‘ΠΈΡ‚Ρ‹ памяти Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: 1 Π±ΠΈΡ‚ для Π·Π½Π°ΠΊΠ°, 11 Π±ΠΈΡ‚ для экспонСнты ΠΈ 52 Π±ΠΈΡ‚Π° для мантиссы. Π‘ ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΠΎΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ ΡΡ‚Π°Ρ€ΡˆΠ΅Π³ΠΎ Π±ΠΈΡ‚Π° мантиссы Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ€Π°Π²Π΅Π½ ΠΎΡ‚ 1.7E-308 Π΄ΠΎ 1.7E+308.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ объявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… вСщСствСнного Ρ‚ΠΈΠΏΠ°:

float f, a, b;

double x, y;

1.2.2 Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΡ€ΠΈ объявлСнии ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, присоСдиняя ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΎΡ€ ΠΊ ΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŽ. Π˜Π½ΠΈΡ†ΠΈΠ°Ρ‚ΠΎΡ€ начинаСтся со Π·Π½Π°ΠΊΠ° «=» ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹:

Π€ΠΎΡ€ΠΌΠ°Ρ‚ 1: = ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΎΡ€;

Π€ΠΎΡ€ΠΌΠ°Ρ‚ 2: = {список — ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΎΡ€ΠΎΠ²};

Π€ΠΎΡ€ΠΌΠ°Ρ‚ 1 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… основных Ρ‚ΠΈΠΏΠΎΠ² ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ, Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ 2 — ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ составных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

char n = 'N';

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ n ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ся символом 'N'.

const long megabute = (1024 * 1024);

НСмодифицируСмая пСрСмСнная megabute инициализируСтся константным Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, послС Ρ‡Π΅Π³ΠΎ ΠΎΠ½Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°.

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ массива символов ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚Π΅ΠΌ использования строкового Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π°.

char stroka[ ] = «ΠŸΡ€ΠΈΠ²Π΅Ρ‚» ;

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ массив символов ΠΈΠ· 7 элСмСнтов, послСдним элСмСнтом (ΡΠ΅Π΄ΡŒΠΌΡ‹ΠΌ) Π±ΡƒΠ΄Π΅Ρ‚ символ '', ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‚ΡΡ всС строковыС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹.

Π’ Ρ‚ΠΎΠΌ случаС, Ссли задаСтся Ρ€Π°Π·ΠΌΠ΅Ρ€ массива, Π° ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Π» Π΄Π»ΠΈΠ½Π½Π΅Π΅, Ρ‡Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ массива, Ρ‚ΠΎ Π»ΠΈΡˆΠ½ΠΈΠ΅ символы ΠΎΡ‚Π±Ρ€Π°ΡΡ‹Π²Π°ΡŽΡ‚ΡΡ.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ объявлСниС ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ stroka ΠΊΠ°ΠΊ массив, состоящий ΠΈΠ· ΡΠ΅ΠΌΠΈ элСмСнтов.

char stroka[5] = «ΠŸΡ€ΠΈΠ²Π΅Ρ‚» ;

Π’ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ stroka ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΏΡΡ‚ΡŒ элСмСнтов Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π°, Π° ΡΠΈΠΌΠ²ΠΎΠ»Ρ‹ 'Ρ‚' ΠΈ '' ΠΎΡ‚Π±Ρ€Π°ΡΡ‹Π²Π°ΡŽΡ‚ΡΡ.

Если строка ΠΊΠΎΡ€ΠΎΡ‡Π΅, Ρ‡Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ массива, Ρ‚ΠΎ ΠΎΡΡ‚Π°Π²ΡˆΠΈΠ΅ΡΡ элСмСнты массива Π·Π°ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ нулями.

1.3 ВыраТСния ΠΈ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ

1.3.1 ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

ΠšΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡ Π·Π½Π°ΠΊΠΎΠ² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ², Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ являСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, называСтся Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π—Π½Π°ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ дСйствия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ Π½Π°Π΄ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ выраТСния зависит ΠΎΡ‚ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π½Π°ΠΊΠΎΠ² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобок Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π° выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

Π’ ΡΠ·Ρ‹ΠΊΠ΅ Π‘И присваиваниС Ρ‚Π°ΠΊΠΆΠ΅ являСтся Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π°ΠΊΠΎΠ³ΠΎ выраТСния являСтся Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π°, которая присваиваСтся.

ΠŸΡ€ΠΈ вычислСнии Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Ρ‚ΠΈΠΏ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ. ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСявными, ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ; ΠΈΠ»ΠΈ явными, ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ привСдСния Ρ‚ΠΈΠΏΠΎΠ².

ΠžΠΏΠ΅Ρ€Π°Π½Π΄ — это константа, Π»ΠΈΡ‚Π΅Ρ€Π°Π», ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, индСксноС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹Π±ΠΎΡ€Π° элСмСнта ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ слоТноС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, сформированноС ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠ΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ², Π·Π½Π°ΠΊΠΎΠ² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобок. Π›ΡŽΠ±ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ константноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, называСтся константным Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ.

Если Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ константа, Ρ‚ΠΎ Π΅ΠΌΡƒ соотвСтствуСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ Ρ‚ΠΈΠΏ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ Π΅Π³ΠΎ константы. ЦСлая константа ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΈΠΏΠ° int, long, unsigned int, unsigned long, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡ ΠΈ ΠΎΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ записи. Бимвольная константа ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ int. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π° с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ всСгда ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ double. Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Π» состоит ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ символов, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚авляСтся Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ ΠΊΠ°ΠΊ массив элСмСнтов Ρ‚ΠΈΠΏΠ° char, ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ символов. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ строкового Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° являСтся адрСс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта строки ΠΈ ΡΠΈΠ½Ρ‚аксичСски строковый Π»ΠΈΡ‚Π΅Ρ€Π°Π» являСтся Π½Π΅ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° Ρ‚ΠΈΠΏ char. Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡΡ…, Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΠΈΡ… Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ Ρ‚ΠΈΠΏΠ° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ. Однако, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ строки Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ, ΠΈΡ… Π½Π΅Π»ΡŒΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Π»Π΅Π²ΠΎΠΉ части ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ послСдним символом строки всСгда являСтся Π½ΡƒΠ»Π΅Π²ΠΎΠΉ символ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ автоматичСски добавляСтся ΠΏΡ€ΠΈ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠΈ строки Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ.

Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ устанавливаСтся ΠΏΡ€ΠΈ Π΅Π³ΠΎ объявлСнии. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° зависит ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

— ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ†Π΅Π»Ρ‹Ρ… ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ значСния ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ°;

— ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ‚ΠΈΠΏΠ° enum прСдставлСн Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠΉ константы ΠΈΠ· ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ констант Π² ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠΈ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° являСтся константноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π’ΠΈΠΏ значСния Π΅ΡΡ‚ΡŒ int, Ρ‡Ρ‚ΠΎ слСдуСт ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ пСрСчислСния;

ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π½ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ — это Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ являСтся константа. ΠžΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ константного выраТСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹Π΅ константы, ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ константы, константы с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ, константы пСрСчислСния, выраТСния привСдСния Ρ‚ΠΈΠΏΠΎΠ², выраТСния с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ sizeof ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ константныС выраТСния. Однако Π½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π½Π°ΠΊΠΎΠ² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π² ΠΊΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π½Ρ‹Ρ… выраТСниях Π½Π°Π»Π°Π³Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ограничСния:

1. Π’ ΠΊΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π½Ρ‹Ρ… выраТСниях нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ вычислСния (,).

2. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ «Π°Π΄Ρ€Π΅Ρ» (&) ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… инициализациях.

ВыраТСния со Π·Π½Π°ΠΊΠ°ΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡΡ… ΠΊΠ°ΠΊ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹. ВыраТСния со Π·Π½Π°ΠΊΠ°ΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½Π°Ρ€Π½Ρ‹ΠΌΠΈ (с ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ), Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΌΠΈ (с Π΄Π²ΡƒΠΌΡ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ) ΠΈ Ρ‚Π΅Ρ€Π½Π°Ρ€Π½Ρ‹ΠΌΠΈ (с Ρ‚рСмя ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ).

Π£Π½Π°Ρ€Π½ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ состоит ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΈ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Π΅ΠΌΡƒ Π·Π½Π°ΠΊΡƒ ΡƒΠ½Π°Ρ€Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚:

Π·Π½Π°ΠΊ-ΡƒΠ½Π°Ρ€Π½ΠΎΠΉ-ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄

Π‘ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅ выраТСния состоит ΠΈΠ· Π΄Π²ΡƒΡ… ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ², Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°ΠΊΠΎΠΌ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ:

ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ 1 Π·Π½Π°ΠΊ-Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ-ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ 2 .

Π’Π΅Ρ€Π½Π°Ρ€Π½ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ состоит ΠΈΠ· Ρ‚Ρ€Π΅Ρ… ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ², Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°ΠΊΠ°ΠΌΠΈ Ρ‚Π΅Ρ€Π½Π°Ρ€Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (?) ΠΈ (:), ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚:

ΠΎΠΏΠ΅Ρ€Π°Π½Π΄_1? ΠΎΠΏΠ΅Ρ€Π°Π½Π΄_2: ΠΎΠΏΠ΅Ρ€Π°Π½Π΄_3 .

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. По ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Ρƒ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ², ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π½Π° ΡƒΠ½Π°Ρ€Π½Ρ‹Π΅, Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΈ Ρ‚Π΅Ρ€Π½Π°Ρ€Π½Ρ‹Π΅.

Π’ ΡΠ·Ρ‹ΠΊΠ΅ Π‘И ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡƒΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ:

— Π°Ρ€ΠΈΡ„мСтичСскоС ΠΎΡ‚Ρ€ΠΈΡ†Π°Π½ΠΈΠ΅ (ΠΎΡ‚Ρ€ΠΈΡ†Π°Π½ΠΈΠ΅ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅);

~ ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ логичСскоС ΠΎΡ‚Ρ€ΠΈΡ†Π°Π½ΠΈΠ΅ (Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅);

! логичСскоС ΠΎΡ‚Ρ€ΠΈΡ†Π°Π½ΠΈΠ΅;

* разадрСсация (косвСнная адрСсация);

& вычислСниС адрСса;

+ ΡƒΠ½Π°Ρ€Π½Ρ‹ΠΉ плюс;

++ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ (ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚);

— ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ (Π΄Π΅ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚);

sizeof Ρ€Π°Π·ΠΌΠ΅Ρ€.

Π£Π½Π°Ρ€Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ справа Π½Π°Π»Π΅Π²ΠΎ.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΡƒΠ½Π°Ρ€Π½Ρ‹Ρ…, Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ. Π‘ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ»Π°ΡΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ‚ΠΈΠ²Π½Ρ‹Π΅

* - Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ;

/ - Π”Π΅Π»Π΅Π½ΠΈΠ΅;

% - ΠžΡΡ‚Π°Ρ‚ΠΎΠΊ ΠΎΡ‚ Π΄Π΅Π»Π΅Π½ΠΈΡ.

АддитивныС

+ — Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅;

— - Π’Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сдвига

<< — Π‘Π΄Π²ΠΈΠ³ Π²Π»Π΅Π²ΠΎ;

>> - Π‘Π΄Π²ΠΈΠ³ Π²ΠΏΡ€Π°Π²ΠΎ.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ

< — МСньшС;

<= - МСньшС ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΎ;

>= - Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΎ;

== - Π Π°Π²Π½ΠΎ;

≠ - НС Ρ€Π°Π²Π½ΠΎ.

ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

& — ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΠ΅ И ;

| - ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΠ΅ Π˜Π›Π˜;

^ - ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ Π˜Π›Π˜.

ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

&& — ЛогичСскоС И ;

|| - ЛогичСскоС Π˜Π›Π˜.

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ вычислСния

, — ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ вычислСниС .

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания

= - ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅;

*= - Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ;

/= - Π”Π΅Π»Π΅Π½ΠΈΠ΅ с ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ;

%= - ΠžΡΡ‚Π°Ρ‚ΠΎΠΊ ΠΎΡ‚ Π΄Π΅Π»Π΅Π½ΠΈΡ с ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ;

-= - Π’Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅ с ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ;

+= - Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ;

<<= - Π‘Π΄Π²ΠΈΠ³ Π²Π»Π΅Π²ΠΎ с ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ;

>>= - Π‘Π΄Π²ΠΈΠ³ Π²ΠΏΡ€Π°Π²ΠΎ присваиваниСм;

&= - ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΠ΅ И Ρ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ;

|= - ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΠ΅ Π˜Π›Π˜ с ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ;

^= - ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ Π˜Π›Π˜ с ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ.

Π›Π΅Π²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΡΡΡ‹Π»Π°ΡŽΡ‰ΠΈΠΌΡΡ Π½Π° ΠΎΠ±Π»Π°ΡΡ‚ΡŒ памяти (Π½ΠΎ Π½Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом const), Ρ‚Π°ΠΊΠΈΠ΅ выраТСния Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ лСводопустимыми, ΠΊ Π½ΠΈΠΌ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ относятся:

— ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Ρ†Π΅Π»ΠΎΠ³ΠΎ ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠΎΠ², Ρ‚ΠΈΠΏΠΎΠ² указатСля, структуры, объСдинСния;

ΠŸΡ€ΠΈ записи Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ слСдуСт ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ символы (*), (&), (!), (+) ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ ΡƒΠ½Π°Ρ€Π½ΡƒΡŽ ΠΈΠ»ΠΈ Π±ΠΈΠ½Π°Ρ€Π½ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ.

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡ€ΠΈ вычислСнии Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ производится автоматичСскоС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ привСсти ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΊ ΠΎΠ±Ρ‰Π΅ΠΌΡƒ Ρ‚ΠΈΠΏΡƒ ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠ΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ Π΄ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Ρ†Π΅Π»Ρ‹Ρ… Π²Π΅Π»ΠΈΡ‡ΠΈΠ½, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ…. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ прСобразования зависит ΠΎΡ‚ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ².

Рассмотрим ΠΎΠ±Ρ‰ΠΈΠ΅ арифмСтичСскиС прСобразования.

1. ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ Ρ‚ΠΈΠΏΠ° float ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ ΠΊ Ρ‚ΠΈΠΏΡƒ double.

2. Если ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ long double, Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ прСобразуСтся ΠΊ ΡΡ‚ΠΎΠΌΡƒ ΠΆΠ΅ Ρ‚ΠΈΠΏΡƒ.

3. Если ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ double, Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‚Π°ΠΊΠΆΠ΅ прСобразуСтся ΠΊ Ρ‚ΠΈΠΏΡƒ double.

4. Π›ΡŽΠ±Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ Ρ‚ΠΈΠΏΠ° char ΠΈ short ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ ΠΊ Ρ‚ΠΈΠΏΡƒ int.

5. Π›ΡŽΠ±Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ unsigned char ΠΈΠ»ΠΈ unsigned short ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ ΠΊ Ρ‚ΠΈΠΏΡƒ unsigned int.

6. Если ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Ρ‚ΠΈΠΏΠ° unsigned long, Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ прСобразуСтся ΠΊ Ρ‚ΠΈΠΏΡƒ unsigned long.

7. Если ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Ρ‚ΠΈΠΏΠ° long, Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ прСобразуСтся ΠΊ Ρ‚ΠΈΠΏΡƒ long.

8. Если ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Ρ‚ΠΈΠΏΠ° unsigned int, Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ прСобразуСтся ΠΊ ΡΡ‚ΠΎΠΌΡƒ ΠΆΠ΅ Ρ‚ΠΈΠΏΡƒ.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ вычислСнии Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ ΠΊ Ρ‚ΠΈΠΏΡƒ Ρ‚ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ наибольший Ρ€Π°Π·ΠΌΠ΅Ρ€.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

double ft, sd; unsigned char ch; unsigned long in; int i;

sd = ft * (i + ch / in);

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° присваивания ΠΏΡ€Π°Π²ΠΈΠ»Π° прСобразования Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. ΠžΠΏΠ΅Ρ€Π°Π½Π΄ ch ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ся ΠΊ unsigned int (ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ 5). Π—Π°Ρ‚Π΅ΠΌ ΠΎΠ½ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ся ΠΊ Ρ‚ΠΈΠΏΡƒ unsigned long (ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ 6). По ΡΡ‚ΠΎΠΌΡƒ ΠΆΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Ρƒ i ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ся ΠΊ unsigned long ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΉ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки, Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΈΠΏ unsigned long. Π—Π°Ρ‚Π΅ΠΌ ΠΎΠ½ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ся ΠΊ Ρ‚ΠΈΠΏΡƒ double (ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ 3) ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ всСго выраТСния Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΈΠΏ double.

Π―Π²Π½ΠΎΠ΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ осущСствлСно посрСдством ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ привСдСния Ρ‚ΠΈΠΏΠΎΠ², которая ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚:

(имя-Ρ‚ΠΈΠΏΠ°) ΠΎΠΏΠ΅Ρ€Π°Π½Π΄

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ записи имя-Ρ‚ΠΈΠΏΠ° Π·Π°Π΄Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

int i=2; long l=2; double d; float f;

d = (double)i * (double)l;

f = (float)d;

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ i, l, d Π±ΡƒΠ΄ΡƒΡ‚ явно ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΊ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобках Ρ‚ΠΈΠΏΠ°ΠΌ.

Рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ языка Π‘И.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ арифмСтичСского, логичСского отрицания ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ дополнСния ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ арифмСтичСского отрицания (-)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: int i = 5, k; k = -i; // k =-5

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ логичСского отрицания «ΠΠ•» (!) Π²Ρ‹Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0, Ссли ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π΅ΡΡ‚ΡŒ истина (Π½Π΅ Π½ΡƒΠ»ΡŒ), ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1, Ссли ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Ρ€Π°Π²Π΅Π½ Π½ΡƒΠ»ΡŽ (0). Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ int. ΠžΠΏΠ΅Ρ€Π°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠ° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€: int t, z=0; t=!z; ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ t ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎΠ΅ 1, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ пСрСмСнная z ΠΈΠΌΠ΅Π»Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎΠ΅ 0 (Π»ΠΎΠΆΠ½ΠΎ).

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ дополнСния (~) Π²Ρ‹Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ своСго ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°. ΠžΠΏΠ΅Ρ€Π°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. ΠžΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΠ΅Ρ‚ΡΡ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ арифмСтичСскоС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° послС прСобразования.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: int i = 5, k; k = ~i;

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ дополнСния дСсятичноС число прСобразуСтся Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ΅, инвСртируСтся, добавляСтся 1 ΠΊ ΠΌΠ»Π°Π΄ΡˆΠ΅ΠΌΡƒ разряду. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС, дСсятичноС число 5 Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Π΅ΡΡ‚ΡŒ 101, инвСрсия этого числа Π΅ΡΡ‚ΡŒ -010, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π±ΡƒΠ΄Π΅Ρ‚ -011, Π² Π΄Π΅ΡΡΡ‚ΠΈΡ‡Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ — -3. Π”ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ — опСрация опрСдСлСния дополнСния Π΄ΠΎ 1.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: char b = '9'; unsigned char f = b, c = ~f;

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ~f Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ число, Ρ‡Ρ‚ΠΎ соотвСтствуСт символу 'Π–'.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ логичСского отрицания; разадрСсации, вычислСния адрСса Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны Π½ΠΈΠΆΠ΅.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ увСличСния ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ увСличСния (++) ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ (—) ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΡƒΠ½Π°Ρ€Π½Ρ‹ΠΌΠΈ опСрациями присваивания. Они соотвСтствСнно ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΈΠ»ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°ΡŽΡ‚ значСния ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ. ΠžΠΏΠ΅Ρ€Π°Π½Π΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠ° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ. ΠžΠΏΠ΅Ρ€Π°Π½Π΄ Ρ†Π΅Π»ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ° ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ (ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°ΡŽΡ‚ΡΡ) Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ. Π’ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° соотвСтствуСт Ρ‚ΠΈΠΏΡƒ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°. ΠžΠΏΠ΅Ρ€Π°Π½Π΄ адрСсного Ρ‚ΠΈΠΏΠ° увСличиваСтся ΠΈΠ»ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ Π°Π΄Ρ€Π΅ΡΡƒΠ΅Ρ‚. Π’ ΡΠ·Ρ‹ΠΊΠ΅ допускаСтся прСфиксная ΠΈΠ»ΠΈ постфиксная Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ увСличСния (ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ), поэтому значСния выраТСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ увСличСния (ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ) зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, какая ΠΈΠ· Ρ„ΠΎΡ€ΠΌ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. Если Π·Π½Π°ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ стоит ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ (прСфиксная Ρ„ΠΎΡ€ΠΌΠ° записи), Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° происходит Π΄ΠΎ Π΅Π³ΠΎ использования Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ являСтся ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ ΠΈΠ»ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°. Π’ Ρ‚ΠΎΠΌ случаС Ссли Π·Π½Π°ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ стоит послС ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° (постфиксная Ρ„ΠΎΡ€ΠΌΠ° записи), Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π²Π½Π°Ρ‡Π°Π»Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для вычислСния выраТСния, Π° Π·Π°Ρ‚Π΅ΠΌ происходит ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

int t = 1, s = 2, z, f; z = (t++) * 5;

Π’Π½Π°Ρ‡Π°Π»Π΅ происходит ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ t*5, Π° Π·Π°Ρ‚Π΅ΠΌ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ t. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ получится z=5, t=2.

f = (++s) / 3;

Π’Π½Π°Ρ‡Π°Π»Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ s ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ся, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ дСлСния. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ s=3, f=1.

Π’ ΡΠ»ΡƒΡ‡Π°Π΅, Ссли ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ увСличСния ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, прСфиксная ΠΈ ΠΏΠΎΡΡ‚фиксная Ρ„ΠΎΡ€ΠΌΡ‹ записи становятся эквивалСнтными.

z++; /* эквивалСнтно */ ++z;

ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»ΠΈΠΊΠ°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. К ΡΡ‚ΠΎΠΌΡƒ классу ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ относятся ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ умноТСния (*), дСлСния (/) ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ остатка ΠΎΡ‚ Π΄Π΅Π»Π΅Π½ΠΈΡ (%). ΠžΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (%) Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹Π΅ числа. ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏΡ‹ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ умноТСния ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ, ΠΈ Π΄Π»Ρ Π½ΠΈΡ… справСдливы ΠΏΡ€Π°Π²ΠΈΠ»Π° прСобразования Ρ‚ΠΈΠΏΠΎΠ². Π’ΠΈΠΏΠΎΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° являСтся Ρ‚ΠΈΠΏ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² послС прСобразования.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ умноТСния (*) выполняСт ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ².

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

int i = 5;

float f = 0.2;

double g, z;

g = f * i;

Π’ΠΈΠΏ произвСдСния i ΠΈ f ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ся ΠΊ Ρ‚ΠΈΠΏΡƒ double, Π·Π°Ρ‚Π΅ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ присваиваСтся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ g.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ дСлСния (/) выполняСт Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ. Если Π΄Π²Π΅ Ρ†Π΅Π»Ρ‹Π΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ Π½Π΅ Π΄Π΅Π»ΡΡ‚ся Π½Π°Ρ†Π΅Π»ΠΎ, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ округляСтся Π² ΡΡ‚ΠΎΡ€ΠΎΠ½Ρƒ нуля.

ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ дСлСния Π½Π° Π½ΠΎΠ»ΡŒ выдаСтся сообщСниС Π²ΠΎ Π²Ρ€Π΅ΠΌΡ выполнСния.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

int i = 49, j = 10, n, m;

n = i / j; /* Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ 4 */

m = i / (-j); /* Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ -4 */

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ остаток ΠΎΡ‚ Π΄Π΅Π»Π΅Π½ΠΈΡ (%) Π΄Π°Π΅Ρ‚ остаток ΠΎΡ‚ Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ.

Π—Π½Π°ΠΊ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Если Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Ρ€Π°Π²Π΅Π½ Π½ΡƒΠ»ΡŽ, Ρ‚ΠΎ Π²Ρ‹Π΄Π°Π΅Ρ‚ся сообщСниС.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

int n = 49, m = 10, i, j, k, l;

i = n % m; /* 9 */

j = n % (-m); /* 9 */

k = (-n) % m; /* -9 */

АддитивныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. К Π°Π΄Π΄ΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΌ опСрациям относятся слоТСниС (+) ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅ (-). ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠΎΠ². Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях Π½Π°Π΄ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ Π°Π΄Π΄ΠΈΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ‰ΠΈΠ΅ арифмСтичСскиС прСобразования. Однако прСобразования, выполняСмыС ΠΏΡ€ΠΈ Π°Π΄Π΄ΠΈΡ‚ΠΈΠ²Π½Ρ‹Ρ… опСрациях, Π½Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ситуаций пСрСполнСния ΠΈ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ значимости. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ тСряСтся, Ссли Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π°Π΄Π΄ΠΈΡ‚ΠΈΠ²Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ прСдставлСн Ρ‚ΠΈΠΏΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² послС прСобразования. ΠŸΡ€ΠΈ этом сообщСниС ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ΅ Π½Π΅ Π²Ρ‹Π΄Π°Π΅Ρ‚ся.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

int i=30 000, j=30 000, k; k = i + j;

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ слоТСния k ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎΠ΅ -5536.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ слоТСния являСтся сумма Π΄Π²ΡƒΡ… ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ². ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΈΠ»ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ — Ρ†Π΅Π»ΠΎΠΉ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ΠΎΠΉ.

Когда цСлая Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° складываСтся с ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ, Ρ‚ΠΎ Ρ†Π΅Π»Π°Ρ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° прСобразуСтся ΠΏΡƒΡ‚Π΅ΠΌ умноТСния Π΅Π΅ Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€ памяти, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠΉ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ΠΎΠΉ, адрСсуСмой ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ.

Когда прСобразованная цСлая Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° складываСтся с Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ΠΎΠΉ указатСля, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ являСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, Π°Π΄Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠΉ ячСйку памяти, Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ Π½Π° Ρ†Π΅Π»ΡƒΡŽ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ дальшС ΠΎΡ‚ ΠΈΡΡ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ адрСса. НовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ указатСля адрСсуСт Ρ‚ΠΎΡ‚ ΠΆΠ΅ самый Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ ΠΈ ΠΈΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ вычитания (-) Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ комбинация ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ²:

1. Оба ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Ρ†Π΅Π»ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ°.

2. Оба ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ указатСлями Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ‚ΠΈΠΏ.

3. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ являСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ — Ρ†Π΅Π»Ρ‹ΠΌ.

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ слоТСния ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚ания Π½Π°Π΄ адрСсами Π² Π΅Π΄ΠΈΠ½ΠΈΡ†Π°Ρ…, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ Π΄Π»ΠΈΠ½Ρ‹ Ρ‚ΠΈΠΏΠ°, ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ Π½Π΅ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·ΡƒΠ΅ΠΌΡ‹ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌ.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сдвига. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сдвига ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ смСщСниС ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π²Π»Π΅Π²ΠΎ (<<) ΠΈΠ»ΠΈ Π²ΠΏΡ€Π°Π²ΠΎ (>>) Π½Π° Ρ‡ΠΈΡΠ»ΠΎ Π±ΠΈΡ‚ΠΎΠ², Π·Π°Π΄Π°Π²Π°Π΅ΠΌΠΎΠ΅ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ. Оба ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌΠΈ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ. Π’Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ арифмСтичСскиС прСобразования. ΠŸΡ€ΠΈ сдвигС Π²Π»Π΅Π²ΠΎ ΠΏΡ€Π°Π²Ρ‹Π΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π±ΠΈΡ‚Ρ‹ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² Π½ΡƒΠ»ΡŒ. ΠŸΡ€ΠΈ сдвигС Π²ΠΏΡ€Π°Π²ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ заполнСния ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ…ΡΡ Π»Π΅Π²Ρ‹Ρ… Π±ΠΈΡ‚ΠΎΠ² зависит ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°. Если Ρ‚ΠΈΠΏ unsigned, Ρ‚ΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½Ρ‹Π΅ Π»Π΅Π²Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² Π½ΡƒΠ»ΡŒ. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС, ΠΎΠ½ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΊΠΎΠΏΠΈΠ΅ΠΉ Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ Π±ΠΈΡ‚Π°. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сдвига Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½, Ссли Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ.

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΡ, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Π΅ опСрациями сдвига, Π½Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ситуаций пСрСполнСния ΠΈ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ значимости. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ тСряСтся, Ссли Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сдвига Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ прСдставлСн Ρ‚ΠΈΠΏΠΎΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°, послС прСобразования.

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ сдвиг Π²Π»Π΅Π²ΠΎ соотвСтствуСт ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ числа 2, Ρ€Π°Π²Π½ΡƒΡŽ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Ρƒ, Π° ΡΠ΄Π²ΠΈΠ³ Π²ΠΏΡ€Π°Π²ΠΎ соотвСтствуСт дСлСнию ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π½Π° 2 Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΠΈ, Ρ€Π°Π²Π½ΠΎΠΉ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Ρƒ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

long int i = 0×1234, j, k ;

k = i << 4; /* k = 0×2340 */

j = i << 8; /* j = 0×3400 */

ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. К ΠΏΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½Ρ‹ΠΌ опСрациям относятся: опСрация поразрядного логичСского «Π˜» (&), опСрация поразрядного логичСского «Π˜Π›Π˜» (|), опСрация поразрядного «ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π˜Π›Π˜» (^).

ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ поразрядных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ любого Ρ†Π΅Π»ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. ΠŸΡ€ΠΈ нСобходимости Π½Π°Π΄ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ прСобразования ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° — это Ρ‚ΠΈΠΏ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² послС прСобразования.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ поразрядного логичСского И (&) сравниваСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±ΠΈΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π±ΠΈΡ‚ΠΎΠΌ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°. Если ΠΎΠ±Π° сравниваСмых Π±ΠΈΡ‚Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹, Ρ‚ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π±ΠΈΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° устанавливаСтся Π² 1, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π² 0.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ поразрядного логичСского Π˜Π›Π˜ (|) сравниваСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±ΠΈΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π±ΠΈΡ‚ΠΎΠΌ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°. Если любой (ΠΈΠ»ΠΈ ΠΎΠ±Π°) ΠΈΠ· ΡΡ€Π°Π²Π½ΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π±ΠΈΡ‚ΠΎΠ² Ρ€Π°Π²Π΅Π½ 1, Ρ‚ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π±ΠΈΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° устанавливаСтся Π² 1, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π±ΠΈΡ‚ Ρ€Π°Π²Π΅Π½ 0.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ поразрядного ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π˜Π›Π˜ (^) сравниваСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±ΠΈΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π±ΠΈΡ‚Π°ΠΌΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°. Если ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΡ€Π°Π²Π½ΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π±ΠΈΡ‚ΠΎΠ² Ρ€Π°Π²Π΅Π½ 0, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π±ΠΈΡ‚ Ρ€Π°Π²Π΅Π½ 1, Ρ‚ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π±ΠΈΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° устанавливаСтся Π² 1, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС, Ρ‚. Π΅. ΠΊΠΎΠ³Π΄Π° ΠΎΠ±Π° Π±ΠΈΡ‚Π° Ρ€Π°Π²Π½Ρ‹ 1 ΠΈΠ»ΠΈ 0, Π±ΠΈΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° устанавливаСтся Π² 0.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

i = 0×45FF, /* i= 0100 0101 1111 1111 */

j = 0×00FF; /* j= 0000 0000 1111 1111 */

r = i ^ j; /* r=0×4500 = 0100 0101 0000 0000 */

r = i | j; /* r=0×45FF = 0100 0101 1111 1111 */

r = i & j /* r=0×00FF = 0000 0000 1111 1111 */

ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. К Π»ΠΎΠ³ΠΈΡ‡Π΅ΡΠΊΠΈΠΌ опСрациям относятся опСрация логичСского И (&&) ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ логичСского Π˜Π›Π˜ (||). ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠ° указатСля, ΠΏΡ€ΠΈ этом Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ². ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ логичСских Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ. Если значСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° достаточно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π½Π΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΠ΅Ρ‚ся. ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π΅ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ стандартных арифмСтичСских ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ. Они ΠΎΡ†Π΅Π½ΠΈΠ²Π°ΡŽΡ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π΅Π³ΠΎ эквивалСнтности Π½ΡƒΠ»ΡŽ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ логичСской ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ являСтся 0 ΠΈΠ»ΠΈ 1, Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° int.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ логичСского И (&&) Π²Ρ‹Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1, Ссли ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΈΠΌΠ΅ΡŽΡ‚ Π½ΡƒΠ»Π΅Π²Ρ‹Π΅ значСния. Если ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² Ρ€Π°Π²Π΅Π½ 0, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π²Π΅Π½ 0. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Ρ€Π°Π²Π½ΠΎ 0, Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π½Π΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΠ΅Ρ‚ся.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ логичСского Π˜Π›Π˜ (||) выполняСт Π½Π°Π΄ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π˜Π›Π˜. Она Π²Ρ‹Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0, Ссли ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΈΠΌΠ΅ΡŽΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0, Ссли ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π°Π²Π΅Π½ 1. Если ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π½Π΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΠ΅Ρ‚ся.

БоставноС присваиваниС. ΠšΡ€ΠΎΠΌΠ΅ простого присваивания, имССтся цСлая Π³Ρ€ΡƒΠΏΠΏΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ присваивания, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ простоС присваиваниС с ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Π’Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ составными опСрациями присваивания ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Π²ΠΈΠ΄:

(ΠΎΠΏΠ΅Ρ€Π°Π½Π΄1) (бинарная опСрация) = (ΠΎΠΏΠ΅Ρ€Π°Π½Π΄2) .

БоставноС присваиваниС ΠΏΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ эквивалСнтно ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ простому ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡŽ:

(ΠΎΠΏΠ΅Ρ€Π°Π½Π΄1) = (ΠΎΠΏΠ΅Ρ€Π°Π½Π΄1) (бинарная опСрация) (ΠΎΠΏΠ΅Ρ€Π°Π½Π΄2) .

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ составного присваивания, с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π½Π΅ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚Π½ΠΎ простому ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ случаС ΠΎΠΏΠ΅Ρ€Π°Π½Π΄1 вычисляСтся Π΄Π²Π°ΠΆΠ΄Ρ‹.

КаТдая опСрация составного присваивания выполняСт прСобразования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ΡΡ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ. Π›Π΅Π²Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ (+=) (-=) ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, Π² Ρ‚ΠΎ Π²Ρ€Π΅ΠΌΡ ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌ числом.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

double a = 2.0;

double b=3.0;

b+=a; /* эквивалСнтно b=b+a */

Условная опСрация. Π’ ΡΠ·Ρ‹ΠΊΠ΅ Π‘И имССтся ΠΎΠ΄Π½Π° тСрнарная опСрация — условная опСрация, которая ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚:

ΠΎΠΏΠ΅Ρ€Π°Π½Π΄1? ΠΎΠΏΠ΅Ρ€Π°Π½Π΄2: ΠΎΠΏΠ΅Ρ€Π°Π½Π΄3

ΠžΠΏΠ΅Ρ€Π°Π½Π΄1 Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΈΠ»ΠΈ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ. Он ΠΎΡ†Π΅Π½ΠΈΠ²Π°Π΅Ρ‚ся с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π΅Π³ΠΎ эквивалСнтности 0. Если ΠΎΠΏΠ΅Ρ€Π°Π½Π΄1 Π½Π΅ Ρ€Π°Π²Π΅Π½ 0, Ρ‚ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΠ΅Ρ‚ся ΠΎΠΏΠ΅Ρ€Π°Π½Π΄2 ΠΈ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ являСтся Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Если ΠΎΠΏΠ΅Ρ€Π°Π½Π΄1 Ρ€Π°Π²Π΅Π½ 0, Ρ‚ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΠ΅Ρ‚ся ΠΎΠΏΠ΅Ρ€Π°Π½Π΄3 ΠΈ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ являСтся Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ вычисляСтся Π»ΠΈΠ±ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄2, Π»ΠΈΠ±ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄3, Π½ΠΎ Π½Π΅ ΠΎΠ±Π°. Π’ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° зависит ΠΎΡ‚ Ρ‚ΠΈΠΏΠΎΠ² ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°2 ΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°3, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

1. Если ΠΎΠΏΠ΅Ρ€Π°Π½Π΄2 ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄3 ΠΈΠΌΠ΅Π΅Ρ‚ Ρ†Π΅Π»Ρ‹ΠΉ ΠΈΠ»ΠΈ ΠΏΠ»Π°Π²Π°ΡŽΡ‰ΠΈΠΉ Ρ‚ΠΈΠΏ (ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΡ… Ρ‚ΠΈΠΏΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ), Ρ‚ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ся ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ арифмСтичСскиС прСобразования. Π’ΠΈΠΏΠΎΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° являСтся Ρ‚ΠΈΠΏ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° послС прСобразования.

2. Если ΠΎΠΏΠ΅Ρ€Π°Π½Π΄2 ΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½3 ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ‚ΠΈΠΏ структуры, объСдинСния ΠΈΠ»ΠΈ указатСля, Ρ‚ΠΎ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π΅ΠΌ ΠΆΠ΅ самым Ρ‚ΠΈΠΏΠΎΠΌ структуры, объСдинСния ΠΈΠ»ΠΈ указатСля.

3. Если ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΈΠΏ void, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ void.

4. Если ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ являСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ любого Ρ‚ΠΈΠΏΠ°, Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ являСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° vold, Ρ‚ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ прСобразуСтся ΠΊ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŽ Π½Π° vold, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΈΠΏΠΎΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.

5. Если ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² являСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ, Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ константным Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ 0, Ρ‚ΠΎ Ρ‚ΠΈΠΏΠΎΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΈΠΏ указатСля.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

max = (d <= b)? b: d;

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ max присваиваСтся максимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… d ΠΈ b.

1.3.2 ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Ρ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ ΠΏΠΎΡ€ΡΠ΄ΠΎΠΊ вычислСний

Π’ ΡΠ·Ρ‹ΠΊΠ΅ Π‘И ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с Π²Ρ‹ΡΡˆΠΈΠΌΠΈ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°ΠΌΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ. ΠΠ°ΠΈΠ²Ρ‹ΡΡˆΠΈΠΌ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ являСтся ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚, Ρ€Π°Π²Π½Ρ‹ΠΉ 1 (Ρ‚Π°Π±Π». 1.3).

Π’Π°Π±Π»ΠΈΡ†Π° 1.3 — ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Ρ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ

ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚

Π—Π½Π°ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

1.

~ ! * & ++ — sizeof ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ²

2.

() []. ->

3.

* / %

4.

+ ;

5.

<< >>

6.

< > <= >=

7.

== ≠ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ (равСнство)

8.

& ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΠ΅ И

9.

^ ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ Π˜Π›Π˜

10.

| ΠŸΠΎΡ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΠ΅ Π˜Π›Π˜

11.

&& ЛогичСскоС И

12.

|| ЛогичСскоС Π˜Π›Π˜

13.

?: Условная

14.

= * = / = % = + = - = & = | = >> = << = ^ =

15.

ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ вычислСниС

1.3.3 ΠŸΠΎΠ±ΠΎΡ‡Π½Ρ‹Π΅ эффСкты

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания Π² ΡΠ»ΠΎΠΆΠ½Ρ‹Ρ… выраТСниях ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Π΅ эффСкты, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠŸΠΎΠ±ΠΎΡ‡Π½Ρ‹ΠΉ эффСкт ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ссли ΠΎΠ½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ прямоС ΠΈΠ»ΠΈ косвСнноС присваиваниС (Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ). Π­Ρ‚ΠΎ связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒΡΡ Π² Π»ΡŽΠ±ΠΎΠΌ порядкС. НапримСр, ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹ΠΉ эффСкт ΠΈΠΌΠ΅Π΅Ρ‚ мСсто Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ: prog (a, a=k*2).

Π’ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΎΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ вычисляСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ, Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ значСния. ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ вычислСния ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ зависит ΠΎΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Π΅ эффСкты, Ссли Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ увСличСния ΠΈΠ»ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания.

НапримСр, Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ i*j+(j++)+(—i) ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ значСния ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ компиляторами. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π½Π΅Π΄ΠΎΡ€Π°Π·ΡƒΠΌΠ΅Π½ΠΈΠΉ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Ρ… эффСктов, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€Π°Π²ΠΈΠ».

1. НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ссли эта пСрСмСнная участвуСт Π² Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

2. НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, Ссли эта пСрСмСнная ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ€Π°Π·Π°.

1.4 ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

ВсС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ языка Π‘И ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ условно Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ:

— ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ «Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅», пустой ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΈ Π΄Ρ€.;

— ΡƒΡΠ»ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ относятся:

— ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ условия if ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π±ΠΎΡ€Π° switch;

— ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ†ΠΈΠΊΠ»Π° (for, while, do while);

— ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° (break, continue, return, goto);

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒΡΡ Π² ΡΠΎΡΡ‚Π°Π²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Ρ… скобок. Π›ΡŽΠ±ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ, состоящСй ΠΈΠ· ΠΈΠΌΠ΅Π½ΠΈ ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π·Π° Π½ΠΈΠΌ двоСточия.

ВсС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ языка БИ, ΠΊΡ€ΠΎΠΌΠ΅ составных ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ с Π·Π°ΠΏΡΡ‚ΠΎΠΉ «;» .

1.4.1 ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅

Π›ΡŽΠ±ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ заканчиваСтся Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ с Π·Π°ΠΏΡΡ‚ΠΎΠΉ, являСтся ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π²Ρ‹Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠΈ выраТСния. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ выраТСния Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ся, поэтому, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Ρ‚Π°ΠΊΠΈΠ΅ выраТСния Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Π΅ эффСкты. Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Π½Π΅Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΡƒΡŽ значСния ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° выраТСния. ΠŸΡ€Π°Π²ΠΈΠ»Π° вычислСния Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π±Ρ‹Π»ΠΈ сформулированы Π²Ρ‹ΡˆΠ΅.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

++ i;

Π­Ρ‚ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ прСдставляСт Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ i Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ.

a=cos (b * 5);

Π­Ρ‚ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ прСдставляСт Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ Π² ΡΠ΅Π±Ρ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания ΠΈ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

a (x, y);

Π­Ρ‚ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ прСдставляСт Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, состоящСС ΠΈΠ· Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

1.4.2 ΠŸΡƒΡΡ‚ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

ΠŸΡƒΡΡ‚ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ состоит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· Ρ‚ΠΎΡ‡ΠΊΠΈ с Π·Π°ΠΏΡΡ‚ΠΎΠΉ. ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этого ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚. Он ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… случаях:

— Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°Ρ… do, for, while, if Π² ΡΡ‚Ρ€ΠΎΠΊΠ°Ρ…, ΠΊΠΎΠ³Π΄Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π½Π΅ Ρ‚рСбуСтся, Π½ΠΎ ΠΏΠΎ ΡΠΈΠ½Ρ‚аксису трСбуСтся хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€;

— ΠΏΡ€ΠΈ нСобходимости ΠΏΠΎΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Ρ„ΠΈΠ³ΡƒΡ€Π½ΡƒΡŽ скобку.

Бинтаксис языка Π‘И Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ послС ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ слСдовал ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€. Ѐигурная ΠΆΠ΅ скобка ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Ссли Π½Π°Π΄ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ„ΠΈΠ³ΡƒΡ€Π½ΡƒΡŽ скобку, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ пустой ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: int main () {

:

{

if (…) goto a; /* ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΡΠΊΠΎΠ±ΠΊΡƒ */

{ … }

a:;

}

return 0; }

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ Ρ‚Π°ΠΊΠΆΠ΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, стоящСС послС return, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки, хотя Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ послСдних Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

1.4.3 Боставной ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

Боставной ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ прСдставляСт собой нСсколько ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΠΉ, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки:

{ [oбъявлСниС]

:

ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€; [ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€];

: }

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΠ½Ρ†Π΅ составного ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Ρ‚ΠΎΡ‡ΠΊΠ° с Π·Π°ΠΏΡΡ‚ΠΎΠΉ Π½Π΅ ΡΡ‚авится.

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ составного ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Π΅Π³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ².

1.4.4 УсловныС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ if

Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°:

if (Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅) ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€1; [else ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€_2;]

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° if Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ся с Π²Ρ‹Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ выраТСния.

Π”Π°Π»Π΅Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ осущСствляСтся ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ схСмС:

— Π΅ΡΠ»ΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ истинно (Ρ‚.Π΅. ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΎΡ‚ 0), Ρ‚ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€1.

— Π΅ΡΠ»ΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π»ΠΎΠΆΠ½ΠΎ (Ρ‚.Π΅. Ρ€Π°Π²Π½ΠΎ 0), Ρ‚ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€2.

— Π΅ΡΠ»ΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π»ΠΎΠΆΠ½ΠΎ ΠΈ ΠΎΡ‚сутствуСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€2 (Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ конструкция), Ρ‚ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π·Π° if ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€.

ПослС выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° if Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пСрСдаСтся Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ссли ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°Ρ€ΡƒΡˆΠ΅Π½Π° использованиСм ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π°.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

if (i < j) i++;

else { j = i — 3; i++; }

Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ Π½Π° ΠΌΠ΅ΡΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€1, Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Π½Π° ΠΌΠ΅ΡΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€2 ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ слоТныС конструкции.

ДопускаСтся использованиС Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² if. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ if ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ if ΠΈΠ»ΠΈ Π² ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ else Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° if. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΠΉ, рСкомСндуСтся Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ Π²ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°Ρ… if, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки. Если ΠΆΠ΅ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки ΠΎΠΏΡƒΡ‰Π΅Π½Ρ‹, Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ связываСт ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово else с Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π±Π»ΠΈΠ·ΠΊΠΈΠΌ if, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅Ρ‚ else.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

int main () { int t = 2, b = 7, r = 3;

if (t > b)

{

if (b < r) r = b;

}

else r = t;

return (0); }

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния этой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ r ΡΡ‚Π°Π½Π΅Ρ‚ Ρ€Π°Π²Π½Ρ‹ΠΌ 2.

Если ΠΆΠ΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки, стоящиС послС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° if, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

int main ()

{

int t = 2, b = 7, r = 3;

if (t > b)

if (b < r) r = b;

else r = t;

return (0);

}

Π’ ΡΡ‚ΠΎΠΌ случаС r ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎΠ΅ 3, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово else относится ΠΊΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ if, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся условиС, провСряСмоС Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ if.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ if:

char ZNAC;

int x, y, z;

:

if (ZNAC == '-') x = y — z;

else if (ZNAC == '+') x = y + z;

else if (ZNAC == '*') x = y * z;

else if (ZNAC == '/') x = y / z;

else …

Из Π°Π½Π°Π»ΠΈΠ·Π° этого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄, Ρ‡Ρ‚ΠΎ конструкции, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ if, ΡΠ²Π»ΡΡŽΡ‚ΡΡ довольно Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΌΠΈ ΠΈ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° достаточно Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌΠΈ.

Π”Ρ€ΡƒΠ³ΠΈΠΌ способом ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΠ· ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² являСтся использованиС ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π²Ρ‹Π±ΠΎΡ€Π° switch.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ switch

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ switch ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΠ· ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ². Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

switch (Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅)

{ [объявлСниС]

:

[case константноС-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅1]: [ список-ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²1]

[case константноС-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅2]: [ список-ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²2]

:

:

[default: [ список ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ]]

}

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π·Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом switch Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобках, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹ΠΌ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, допустимыми Π² ΡΠ·Ρ‹ΠΊΠ΅ БИ, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌ. ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ явноС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊ Ρ†Π΅Π»ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Ρ‚Π΅Ρ… ограничСниях ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΡΡ…, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅.

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого выраТСния являСтся ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ для Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ². Π’Π΅Π»ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° smitch состоит ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом case с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ константным Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ использованиС Ρ†Π΅Π»ΠΎΠ³ΠΎ константного выраТСния являСтся сущСствСнным нСдостатком, присущим рассмотрСнному ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ