ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си

Какими Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π² C Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с:

«Π˜Π· ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠΉ

Π°) ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ взятия ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ (%) ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ†Π΅Π»Ρ‹ΠΌ числам.

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

Из Ρ‡Π΅Π³ΠΎ состоит ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ объявлСния ΠΈΠΌΠ΅Π½ΠΈ?

К вСщСствСнным константам Π½Π΅ относятся число:

К простым ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌ относятся:

К цСлочислСнным константам Π½Π΅ относятся число:

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ заканчиваСтся__________

Какая ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π΅ относится ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сравнСния?

Какая константа ΡƒΠΊΠ°Π·Π°Π½Π° НЕ Π²Π΅Ρ€Π½ΠΎ?

КакиС слуТСбныС символы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для обозначСния Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°?

Какими Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² Π‘ΠΈ++?

«ΠšΠ°ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

«ΠšΠ°ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

Ρ…/=++Ρƒ;Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:»

«ΠšΠ°ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

Ρ…=(Ρƒ Нравится ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ список ΠΎΡ†Π΅Π½ΠΈΠ²ΡˆΠΈΡ…

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

«ΠšΠ°ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

Какого Ρ‚ΠΈΠΏΠ° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ дСлСния 15 Π½Π° 4 ΠΏΡ€ΠΈ вычислСнии Π½Π° языкС Π‘?

КакоС ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ эквивалСнтно Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ слову true?

КакоС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ цСлая пСрСмСнная Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния?

Какой ΠΈΠ· Π½ΠΈΠΆΠ΅ пСрСчислСнных ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Π½Π΅ являСтся Ρ†ΠΈΠΊΠ»ΠΎΠΌ Π² Π‘++?

Какой ΠΈΠ· пСрСчислСнных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ являСтся Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… Π² Π‘++?

Какой ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ языка C ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Ρ†ΠΈΠΊΠ» с прСдусловиСм?

Какой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π΅Ρ‚ Π² C++?

ΠšΠ°ΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ всС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π‘++?

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² скобки:

Π›ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½ΡƒΠ»ΡŒ Π² Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π°Ρ… ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚:

ЛогичСскоС Β«ΠΈΒ» обозначаСтся:

ЛогичСскоС Β«Π½Π΅ Ρ€Π°Π²Π½ΠΎΒ» обозначаСтся:

ЛогичСскоС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Not A And (B Or C) Π±ΡƒΠ΄Π΅Ρ‚ истинным ΠΏΡ€ΠΈ значСниях ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… A, B, C Ρ€Π°Π²Π½Ρ‹Ρ…:

ЛогичСскоС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Not(A And Not(B Or Not C)) Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΎΠΆΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈ значСниях ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… A, B, C Ρ€Π°Π²Π½Ρ‹Ρ…:

ΠœΠ΅Ρ‚ΠΊΠΈ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ Switch Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ:

ΠœΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ΅ исполнСниС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ участка ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ называСтся:

Найти ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² записи константы:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ________ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для принятия Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ while соотвСтствуСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ for:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π±ΠΎΡ€Π°________ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для выполнСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ дСйствия, Ссли Π΅Π³ΠΎ условиС истинно, ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ дСйствия, Ссли условиС Π»ΠΎΠΆΠ½ΠΎ

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π²ΠΎΠ΄Π° cout ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ называСтся пустым, Ссли ΠΎΠ½:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ записи if ( ) else называСтся ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ:

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ³ΠΎ Β«ΠΈΠ»ΠΈΒ» обозначаСтся:

ОписаниСм Ρ†ΠΈΠΊΠ»Π° с прСдусловиСм являСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅:

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° выраТСния I*I+J*J+2*K/2 ΠΏΡ€ΠΈ вычислСнии Π½Π° языкС Π‘, Ссли извСстно, Ρ‡Ρ‚ΠΎ int I,J,K;

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° выраТСния I+SQRT(J) ΠΏΡ€ΠΈ вычислСнии Π½Π° языкС Π‘, Ссли извСстно, Ρ‡Ρ‚ΠΎ int I,J,K;

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° выраТСния SIN(X)+2*COS(Y)+Z ΠΏΡ€ΠΈ вычислСнии Π½Π° языкС Π‘, Ссли извСстно, Ρ‡Ρ‚ΠΎ float X,Y,Z;

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, какая строка Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡Ρƒ: Π½Π°ΠΉΡ‚ΠΈ срСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ А ΠΈ Π’, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ А:

«ΠžΡΠ½ΠΎΠ²Π½Π°Ρ идСя структурного программирования состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ основными для написания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:»

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Какими Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π² C Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с:

«Π˜Π· ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠΉ

Π°) ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ взятия ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ (%) ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ†Π΅Π»Ρ‹ΠΌ числам.

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

Из Ρ‡Π΅Π³ΠΎ состоит ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ объявлСния ΠΈΠΌΠ΅Π½ΠΈ?

К вСщСствСнным константам Π½Π΅ относятся число:

К простым ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌ относятся:

К цСлочислСнным константам Π½Π΅ относятся число:

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ заканчиваСтся__________

Какая ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π΅ относится ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сравнСния?

Какая константа ΡƒΠΊΠ°Π·Π°Π½Π° НЕ Π²Π΅Ρ€Π½ΠΎ?

КакиС слуТСбныС символы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для обозначСния Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°?

Какими Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² Π‘ΠΈ++?

«ΠšΠ°ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

«ΠšΠ°ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

Ρ…/=++Ρƒ;Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:»

«ΠšΠ°ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

Ρ…=(Ρƒ Нравится ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ список ΠΎΡ†Π΅Π½ΠΈΠ²ΡˆΠΈΡ…

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

«ΠšΠ°ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

Какого Ρ‚ΠΈΠΏΠ° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ дСлСния 15 Π½Π° 4 ΠΏΡ€ΠΈ вычислСнии Π½Π° языкС Π‘?

КакоС ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ эквивалСнтно Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ слову true?

КакоС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ цСлая пСрСмСнная Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния?

Какой ΠΈΠ· Π½ΠΈΠΆΠ΅ пСрСчислСнных ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Π½Π΅ являСтся Ρ†ΠΈΠΊΠ»ΠΎΠΌ Π² Π‘++?

Какой ΠΈΠ· пСрСчислСнных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ являСтся Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… Π² Π‘++?

Какой ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ языка C ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Ρ†ΠΈΠΊΠ» с прСдусловиСм?

Какой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π΅Ρ‚ Π² C++?

ΠšΠ°ΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ всС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π‘++?

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² скобки:

Π›ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½ΡƒΠ»ΡŒ Π² Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π°Ρ… ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚:

ЛогичСскоС Β«ΠΈΒ» обозначаСтся:

ЛогичСскоС Β«Π½Π΅ Ρ€Π°Π²Π½ΠΎΒ» обозначаСтся:

ЛогичСскоС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Not A And (B Or C) Π±ΡƒΠ΄Π΅Ρ‚ истинным ΠΏΡ€ΠΈ значСниях ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… A, B, C Ρ€Π°Π²Π½Ρ‹Ρ…:

ЛогичСскоС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Not(A And Not(B Or Not C)) Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΎΠΆΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈ значСниях ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… A, B, C Ρ€Π°Π²Π½Ρ‹Ρ…:

ΠœΠ΅Ρ‚ΠΊΠΈ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ Switch Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ:

ΠœΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ΅ исполнСниС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ участка ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ называСтся:

Найти ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² записи константы:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ________ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для принятия Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Rp094qWBuRts4QvJ6Rvrjbc120mnadwOh0r3lRjyq2q7BD4oNSmHgOLHRBHEoDTI7gfyjwyzOtK8S3wi7w8BoPNt. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ while соотвСтствуСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ for:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π±ΠΎΡ€Π°________ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для выполнСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ дСйствия, Ссли Π΅Π³ΠΎ условиС истинно, ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ дСйствия, Ссли условиС Π»ΠΎΠΆΠ½ΠΎ

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π²ΠΎΠ΄Π° cout ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ называСтся пустым, Ссли ΠΎΠ½:

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ записи if ( ) else называСтся ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ:

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ³ΠΎ Β«ΠΈΠ»ΠΈΒ» обозначаСтся:

ОписаниСм Ρ†ΠΈΠΊΠ»Π° с прСдусловиСм являСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅:

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° выраТСния I*I+J*J+2*K/2 ΠΏΡ€ΠΈ вычислСнии Π½Π° языкС Π‘, Ссли извСстно, Ρ‡Ρ‚ΠΎ int I,J,K;

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° выраТСния I+SQRT(J) ΠΏΡ€ΠΈ вычислСнии Π½Π° языкС Π‘, Ссли извСстно, Ρ‡Ρ‚ΠΎ int I,J,K;

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° выраТСния SIN(X)+2*COS(Y)+Z ΠΏΡ€ΠΈ вычислСнии Π½Π° языкС Π‘, Ссли извСстно, Ρ‡Ρ‚ΠΎ float X,Y,Z;

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, какая строка Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡Ρƒ: Π½Π°ΠΉΡ‚ΠΈ срСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½ А ΠΈ Π’, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ А:

«ΠžΡΠ½ΠΎΠ²Π½Π°Ρ идСя структурного программирования состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ основными для написания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:»

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строк Π² CΠΈ

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ строки ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ прСдусмотрСно Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти для хранСния строки.

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

ΠŸΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ массива символов Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ компилятору Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ памяти.

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ массива символов, Ссли инициализация массива Π·Π°Π΄Π°Π½Π° ΠΏΡ€ΠΈ объявлСнии строковой константой:

Π’ этом случаС ΠΈΠΌΠ΅Π½Π° m2 ΠΈ m3 ΡΠ²Π»ΡΡŽΡ‚ΡΡ указатСлями Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹Π΅ элСмСнты массивов:

ΠŸΡ€ΠΈ объявлСнии массива символов ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΅Π³ΠΎ строковой константой ΠΌΠΎΠΆΠ½ΠΎ явно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ массива, Π½ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ массива Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ большС, Ρ‡Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ строковой константы:

Π’ этом случаС объявлСниС массива ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ m4 ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ присвоСн адрСс массива:

Для указатСля ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ увСличСния (пСрСмСщСния Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ символ):

ΠœΠ°ΡΡΠΈΠ²Ρ‹ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… строк

Π’ этом случаС poet являСтся массивом, состоящим ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ строки. КаТдая строка символов прСдставляСт собой ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ массив, поэтому имССтся Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ указатСля Π½Π° массивы. Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ poet[0] ссылаСтся Π½Π° ΠΏΠ΅Ρ€Π²ΡƒΡŽ строку:
*poet[0] эквивалСнтно ‘П’,
*poet[l] эквивалСнтно ‘-‘.

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

Π Π°Π·Π½ΠΈΡ†Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ такая Ρ„ΠΎΡ€ΠΌΠ° Π·Π°Π΄Π°Π΅Ρ‚ Β«ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹ΠΉΒ» массив, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ всС строки ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ.

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. strings. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-strings. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° strings. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

Π‘Π²ΠΎΠ±ΠΎΠ΄Π½Ρ‹ΠΉ массив

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со строками

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ языка Π‘ΠΈ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… Π΄Π΅Π»ΠΎ со строками, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с указатСлями. Для размСщСния Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти строки символов Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ:

Для выдСлСния памяти ΠΏΠΎΠ΄ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ строки ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ динамичСского выдСлСния памяти. ΠŸΡ€ΠΈ этом Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ строки:

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π° строк

Для Π²Π²ΠΎΠ΄Π° строки, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция

Π’ качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ пСрСдаСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° строку, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ осущСствляСтся Π²Π²ΠΎΠ΄. Ѐункция просит ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ввСсти строку, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ½Π° ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π² массив, ΠΏΠΎΠΊΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ Π½Π°ΠΆΠΌΠ΅Ρ‚ Enter.

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° строк

Для Π²Ρ‹Π²ΠΎΠ΄Π° строк ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ рассмотрСнной Ρ€Π°Π½Π΅Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ

ΠΈΠ»ΠΈ Π² сокращСнном Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅

Для Π²Ρ‹Π²ΠΎΠ΄Π° строк Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ функция

которая ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ строку s ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ курсор Π½Π° Π½ΠΎΠ²ΡƒΡŽ строку (Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ printf() ). Ѐункция puts() Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π²Ρ‹Π²ΠΎΠ΄Π° строковых констант, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ.

Ѐункция Π²Π²ΠΎΠ΄Π° символов

Для Π²Π²ΠΎΠ΄Π° символов ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ функция

которая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ символа, Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹. Указанная функция использовалась Π² рассмотрСнных Ρ€Π°Π½Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… для Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΎΠΊΠ½Π° консоли послС выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎ наТатия клавиши.

Ѐункция Π²Ρ‹Π²ΠΎΠ΄Π° символов

Для Π²Ρ‹Π²ΠΎΠ΄Π° символов ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ функция

которая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ символа ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран символ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹ΠΉ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠŸΠΎΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ количСство Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… символов Π²ΠΎ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠΉ строкС.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния
ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. string1. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-string1. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° string1. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ string.h

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ string.h ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅.

присоСдиняСт Π½Π΅ Π±ΠΎΠ»Π΅Π΅ n символов s2 ΠΊ s1, Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ строку символом ‘\0’, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ s1сравниваСт Π½Π΅ Π±ΠΎΠ»Π΅Π΅ n символов строк s1 ΠΈ s2, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0, Ссли Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ n символов строк эквивалСнтнызаполняСт строку s символами, ΠΊΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°Π²Π΅Π½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ c, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° строку sзамСняСт ΠΏΠ΅Ρ€Π²Ρ‹Π΅ n символов строки s символами, ΠΊΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°Π²Π΅Π½ c, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° строку s

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния
ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. string2. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-string2. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° string2. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π‘ΠΈ. ПосланиС ΠΈΠ· ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ столСтия

ΠŸΡ€Π΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅

Π― нСсколько Ρ€Π°Π· Π² своих коммСнтариях ссылался Π½Π° ΠΊΠ½ΠΈΠ³Ρƒ Π­Π½Π΄Ρ€ΡŽ Π’Π°Π½Π΅Π½Π±Π°ΡƒΠΌΠ° Β«Operating Systems Design and ImplementationΒ» Π½Π° Π΅Π΅ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π² Π½Π΅ΠΉ прСдставлСн язык Π‘ΠΈ. И эти ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ всСгда Π²Ρ‹Π·Ρ‹Π²Π°Π»ΠΈ интСрСс. Π― Ρ€Π΅ΡˆΠΈΠ», Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΡˆΠ»ΠΎ врСмя ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ этого ввСдСния Π² язык Π‘ΠΈ. Оно ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ. Π₯отя навСрняка найдутся ΠΈ Ρ‚Π΅, ΠΊΡ‚ΠΎ Π½Π΅ ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎ языкС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ PL/1, Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°ΠΆΠ΅ ΠΈ ΠΎΠ± ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Minix.

Π­Ρ‚ΠΎ описаниС интСрСсно Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ с историчСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΈ для понимания Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π΄Π°Π»Π΅ΠΊΠΎ ΡƒΡˆΠ΅Π» язык Π‘ΠΈ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° своСго роТдСния ΠΈ IT-ΠΎΡ‚Ρ€Π°ΡΠ»ΡŒ Π² Ρ†Π΅Π»ΠΎΠΌ.

Π₯ΠΎΡ‡Ρƒ сразу ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΉ Π²Ρ‚ΠΎΡ€ΠΎΠΉ язык французский:

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. image loader. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

Но это компСнсируСтся 46-Π»Π΅Ρ‚Π½ΠΈΠΌ программистским стаТСм.
Π˜Ρ‚Π°ΠΊ, приступим, наступила ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π­Π½Π΄Ρ€ΡŽ Π’Π°Π½Π΅Π½Π±Π°ΡƒΠΌΠ°.

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² язык Π‘ΠΈ (стр. 350 β€” 362)

ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. image loader. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ заканчиваСтся Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ строк ΠΊΠΎΠ΄Π° Π² си. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. CΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅ a=0; do a=a+1 while (a sin(3)) and not sqrt(x + 0.44) Π½ΡƒΠΆΠ½Π° для:

Π―Π·Ρ‹ΠΊ программирования CΠΈ Π±Ρ‹Π» создан ДСннисом Π ΠΈΡ‚Ρ‡ΠΈ ΠΈΠ· AT&T Bell Laboratories ΠΊΠ°ΠΊ язык программирования высокого уровня для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы UNIX. Π’ настоящСС врСмя язык ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… областях. C особСнно популярСн Ρƒ систСмных программистов, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ позволяСт ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ просто ΠΈ ΠΊΡ€Π°Ρ‚ΠΊΠΎ.

Основной ΠΊΠ½ΠΈΠ³ΠΎΠΉ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π°Ρ язык CΠΈ, являСтся ΠΊΠ½ΠΈΠ³Π° Π‘Ρ€Π°ΠΉΠ°Π½Π° ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½Π° ΠΈ ДСнниса Π ΠΈΡ‚Ρ‡ΠΈ Β« Π―Π·Ρ‹ΠΊ программирования CΠΈΒ» (1978). Книги ΠΏΠΎ языку Π‘ΠΈ писали Bolon (1986), Gehani (1984), Hancock and Krieger (1986), Harbison ΠΈ Steele (1984) ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.

Π’ этом ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΌΡ‹ попытаСмся Π΄Π°Ρ‚ΡŒ достаточно ΠΏΠΎΠ»Π½ΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² CΠΈ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Ρ‚Π΅ ΠΊΡ‚ΠΎ Π·Π½Π°ΠΊΠΎΠΌ с языками высокого уровня, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Pascal, PL/1 ΠΈΠ»ΠΈ Modula 2, смогут ΠΏΠΎΠ½ΡΡ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° MINIX, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π² этой ΠΊΠ½ΠΈΠ³Π΅. ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ CΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² MINIX, здСсь Π½Π΅ ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ. ΠœΠ½ΠΎΠ³ΠΎΡ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠ½ΠΊΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ ΠΎΠΏΡƒΡ‰Π΅Π½Ρ‹. АкцСнт дСлаСтся Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Π‘ΠΈ, Π° Π½Π΅ Π½Π° написании ΠΊΠΎΠ΄Π°.

А.1. ΠžΡΠ½ΠΎΠ²Ρ‹ языка Π‘ΠΈ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° CΠΈ состоит ΠΈΠ· Π½Π°Π±ΠΎΡ€Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ (часто Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… функциями, Π΄Π°ΠΆΠ΅ Ссли ΠΎΠ½ΠΈ Π½Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ). Π­Ρ‚ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ содСрТат объявлСния, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ вмСстС говорят ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ Ρ‡Ρ‚ΠΎ Π½Π°Π΄ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ. На рисункС A-1 ΠΏΠΎΠΊΠ°Π·Π°Π½Π° нСбольшая ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ±ΡŠΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚Ρ€ΠΈ цСлочислСнныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈΠΌ значСния. Имя ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ β€” main (главная). ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Π½Π° Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ отсутствиС ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ скобками Π·Π° ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. Π’Π΅Π»ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π² Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки ( < >). Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ CΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΈ Ρ‡Ρ‚ΠΎ эти ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ Π΄ΠΎ использования. CΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ это ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ присваивания. ВсС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ с запятой (Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Паскаля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ двоСточия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ, Π° Π½Π΅ послС Π½ΠΈΡ…).

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с символов Β« / *Β» ΠΈ заканчиваСтся символами Β«* /Β» ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ нСсколько строк.

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° содСрТит Ρ‚Ρ€ΠΈ константы. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π° 10 Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ присваивании
это обычная дСсятичная константа. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π° 015 являСтся Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠΉ константой
(Ρ€Π°Π²Π½ΠΎ 13 Π² дСсятичной систСмС счислСния). Π’ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Ρ‹Π΅ константы всСгда Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ нуля. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π° 0xFF являСтся ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΉ константой (Ρ€Π°Π²Π½ΠΎΠΉ 255 дСсятичной). ШСстнадцатСричный константы всСгда Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с 0x. ВсС Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² CΠΈ.

А.2. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…

CΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° основных Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… (ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…): Ρ†Π΅Π»ΠΎΠ΅ ΠΈ символ, ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅ΠΌΡ‹Π΅ ΠΊΠ°ΠΊ int ΠΈ char, соотвСтствСнно. НСт ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Π±ΡƒΠ»Π΅Π²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π’ качСствС Π±ΡƒΠ»Π΅Π²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ пСрСмСнная int. Если эта пСрСмСнная содСрТит 0, Ρ‚ΠΎ это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ лоТь/false, Π° любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ истина/true. CΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΈ Ρ‚ΠΈΠΏΡ‹ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ, Π½ΠΎ MINIX Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΈΡ….

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ register Ρ‚Π°ΠΊΠΆΠ΅ допускаСтся ΠΊΠ°ΠΊ для int, Ρ‚Π°ΠΊ ΠΈ для char, ΠΈ являСтся подсказкой для компилятору, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ стоит ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² рСгистр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° быстрСС.

НСкоторыС объявлСния ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π½Π° рис. А β€” 2.

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ. НапримСр, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½, Π΄Π°ΠΆΠ΅ Ссли i ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ int, Π° flag_pole β€” long. Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях
Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ прСобразования ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Для ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ прСобразования достаточно ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Ρ‚ΠΈΠΏ Π² скобках ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ для прСобразования. НапримСр:

прСдписываСт ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ΅ число i Π² long ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ Π΅Π³ΠΎ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ p, которая ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ long.

ΠŸΡ€ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ слСдуСт ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π·Π½Π°ΠΊ.
ΠŸΡ€ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ символа Π² Ρ†Π΅Π»ΠΎΠ΅ число Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ компиляторы ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ символы ΠΊΠ°ΠΊ Π·Π½Π°ΠΊΠΎΠ²Ρ‹Π΅, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΡ‚ β€” 128 Π΄ΠΎ +127, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ ΠΈΡ… ΠΊΠ°ΠΊ
Π±Π΅Π· Π·Π½Π°ΠΊΠ°, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΡ‚ 0 Π΄ΠΎ 255. Π’ MINIX часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅ выраТСния, ΠΊΠ°ΠΊ

ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ с (символ) Π² Ρ†Π΅Π»ΠΎΠ΅ число, Π° Π·Π°Ρ‚Π΅ΠΌ выполняСт логичСскоС И
(ампСрсанд) с Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠΉ константой 0377. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ получаСтся, Ρ‡Ρ‚ΠΎ ΡΡ‚Π°Ρ€ΡˆΠΈΠ΅ 8 Π±ΠΈΡ‚
ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ноль, фактичСски заставляя Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ c ΠΊΠ°ΠΊ 8-Π±ΠΈΡ‚Π½ΠΎΠ΅ число Π±Π΅Π· Π·Π½Π°ΠΊΠ°, Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 0 Π΄ΠΎ 255.

А.3. БоставныС Ρ‚ΠΈΠΏΡ‹ ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ

Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ рассмотрим Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ способа построСния Π±ΠΎΠ»Π΅Π΅ слоТных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…: массивы, структуры, объСдинСния ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ (arrays, structures, unions, and pointers). Массив β€” это коллСкция/мноТСство элСмСнтов ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. ВсС массивы Π² CΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с элСмСнта 0.

ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ массив a с 10 Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ хранится Π² элСмСнтах массива ΠΎΡ‚ [0] Π΄ΠΎ a [9]. Π’Ρ‚ΠΎΡ€ΠΎΠ΅, массивы ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Ρ€Π΅Ρ… ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ, Π½ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² MINIX.
Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° β€” это Π½Π°Π±ΠΎΡ€ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ². Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π² CΠΈ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° record Π² ПаскалС. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ s ΠΊΠ°ΠΊ структуру, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ Π΄Π²Π° Ρ‡Π»Π΅Π½Π°, Ρ†Π΅Π»ΠΎΠ΅ число i ΠΈ символ c.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Ρ‡Π»Π΅Π½Ρƒ i структуры s Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 6, Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅:

Π³Π΄Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Ρ‚ΠΎΡ‡ΠΊΠ° ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ элСмСнт i ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ структурС s.
ОбъСдинСниС β€” это Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π±ΠΎΡ€ Ρ‡Π»Π΅Π½ΠΎΠ², Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ структурС, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π² объСдинСниС ΠΌΠΎΠΆΠ΅Ρ‚ находится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ…. ОбъявлСниС

ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ΅ число ΠΈΠ»ΠΈ символ, Π½ΠΎ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΎΠ±Π°. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ достаточно мСста для объСдинСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Π½Π΅ΠΌ ΠΌΠΎΠ³ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ самый большой (с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠΉ памяти) элСмСнт объСдинСния. ОбъСдинСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π΄Π²ΡƒΡ… мСстах Π² MINIX (для опрСдСлСния сообщСния ΠΊΠ°ΠΊ объСдинСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… структур, ΠΈ для опрСдСлСния дискового Π±Π»ΠΎΠΊΠ° ΠΊΠ°ΠΊ объСдинСния Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…, Π±Π»ΠΎΠΊΠ° i-ΡƒΠ·Π»Π°, Π±Π»ΠΎΠΊΠ° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ΠΈ Ρ‚. Π΄.).

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для хранСния ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… адрСсов Π² CΠΈ. Они ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΡ‡Π΅Π½ΡŒ ΠΈ ΠΎΡ‡Π΅Π½ΡŒ часто. Π‘ΠΈΠΌΠ²ΠΎΠ» Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠ° (*) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для обозначСния указатСля Π² ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΡΡ…. ОбъявлСниС

ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ Ρ†Π΅Π»ΠΎΠ΅ число i, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Ρ†Π΅Π»ΠΎΠ΅ число pi, массив a ΠΈΠ· 10 элСмСнтов, массив b ΠΈΠ· 10 ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° Ρ†Π΅Π»Ρ‹Π΅ числа ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ppi Π½Π° Ρ†Π΅Π»ΠΎΠ΅ число.

Π’ΠΎΡ‡Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° синтаксиса для слоТных объявлСний, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰ΠΈΡ… массивы, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ нСсколько слоТны. К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, MINIX ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ простыС объявлСния.

На рисункС A-3 ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ объявлСниС массива z структур struct table, каТдая ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚
Ρ‚Ρ€ΠΈ Ρ‡Π»Π΅Π½Π°, Ρ†Π΅Π»ΠΎΠ΅ число i, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ cp Π½Π° символ ΠΈ символ с.

ΠœΠ°ΡΡΠΈΠ²Ρ‹ структур распространСны Π² MINIX. Π”Π°Π»Π΅Π΅, имя table ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ структуру struct table, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½ΠΈΡΡ…. НапримСр,

ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ p ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° структуру struct table ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΅Π΅
Π² register. Π’ΠΎ врСмя выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ p ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° z [4] ΠΈΠ»ΠΈ
Π½Π° любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ элСмСнт Π² z, всС 20 элСмСнтов ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡΠ²Π»ΡΡŽΡ‚ΡΡ структурами Ρ‚ΠΈΠΏΠ° struct table.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ p ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° z [4], достаточно Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ

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

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ стрСлка ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для доступа ΠΊ Ρ‡Π»Π΅Π½Ρƒ структуры Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ. Если ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ z, Ρ‚ΠΎ Ρ‚ΠΎΠ³Π΄Π° ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ с Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ:

Π Π°Π·Π½ΠΈΡ†Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ z [4] являСтся структурой, ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Ρ‚ΠΎΡ‡ΠΊΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ элСмСнты
ΠΈΠ· составных Ρ‚ΠΈΠΏΠΎΠ² (структуры, массивы) Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΌΡ‹ Π½Π΅ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ участника Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ. Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ прСдписываСт сначала Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ структуру ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ‚ΠΎΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‡Π»Π΅Π½Π° этой структуры.

Иногда ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π΄Π°Ρ‚ΡŒ имя составному Ρ‚ΠΈΠΏΡƒ. НапримСр:

опрСдСляСт unshort ΠΊΠ°ΠΊ unsigned short (ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ число Π±Π΅Π· Π·Π½Π°ΠΊΠ°). Π’Π΅ΠΏΠ΅Ρ€ΡŒ unshort ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΊΠ°ΠΊ основной Ρ‚ΠΈΠΏ. НапримСр,

ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ число Π±Π΅Π· Π·Π½Π°ΠΊΠ°, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ число Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΈ
массив ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… Ρ†Π΅Π»Ρ‹Ρ… Π±Π΅Π· Π·Π½Π°ΠΊΠ°.

А.4. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π² CΠΈ содСрТат объявлСния ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹. ΠœΡ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ объявлСния, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹. НазначСниС условного ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ сущСству Ρ‚Π°ΠΊΠΈΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках. Рисунок А – 4 ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈΠ· Π½ΠΈΡ…. ЕдинствСнноС, Π½Π° Ρ‡Ρ‚ΠΎ стоит ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ while ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π΅ Ρ„ΠΎΡ€ΠΌΡ‹, вторая ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ repeat Паскаля.

CΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ for, Π½ΠΎ ΠΎΠ½ Π½Π΅ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ for Π² любом Π΄Ρ€ΡƒΠ³ΠΎΠΌ языкС. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ for ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

Π’ΠΎΠΆΠ΅ самоС ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΠ΅Ρ€Ρ‚ΠΎΡ€ while:

Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€:

Π­Ρ‚ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ устанавливаСт ΠΏΠ΅Ρ€Π²Ρ‹Π΅ n элСмСнтов массива a Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ Π½ΡƒΠ»ΡŽ. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° начинаСтся с установки i Π² ноль (это дСлаСтся Π²Π½Π΅ Ρ†ΠΈΠΊΠ»Π°). Π—Π°Ρ‚Π΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ повторяСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° i ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° своих Π°Π½Π°Π»ΠΎΠ³ΠΎΠ² Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ %
ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ. Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ равСнства это ==, Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ нСравСнства это! =. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π°Π²Π½Ρ‹ Π»ΠΈ a ΠΈ b, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊ:

Π‘ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ позволяСт ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ присваивания с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ, поэтому

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

Π‘ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ для манипулирования Π±ΠΈΡ‚Π°ΠΌΠΈ слова. Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½Ρ‹ ΠΊΠ°ΠΊ сдвиги, Ρ‚Π°ΠΊ ΠΈ ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²Ρ‹Π΅ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сдвига Π²Π»Π΅Π²ΠΎ ΠΈ Π²ΠΏΡ€Π°Π²ΠΎ ΡΠ²Π»ΡΡŽΡ‚ΡΡ > соотвСтствСнно. ΠŸΠΎΠ±ΠΈΡ‚ΠΎΠ²Ρ‹Π΅ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ &, | ΠΈ ^, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ логичСским И (AND), Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΌ Π˜Π›Π˜ (OR) ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΌ Π˜Π›Π˜ (XOP) соотвСтствСнно. Если i ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 035 (Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅), Ρ‚ΠΎΠ³Π΄Π° Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ i & 06 ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 04 (Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅). Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ссли i = 7, Ρ‚ΠΎ

ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ 074 для j.
Π”Ρ€ΡƒΠ³ΠΎΠΉ Π²Π°ΠΆΠ½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΡƒΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄. Как ΡƒΠ½Π°Ρ€Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ампСрсанд & ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ адрСс ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

Если p являСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π½Π° Ρ†Π΅Π»ΠΎΠ΅ число, Π° i являСтся Ρ†Π΅Π»Ρ‹ΠΌ числом, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

вычисляСт адрСс i ΠΈ сохраняСт Π΅Π³ΠΎ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ p.
ΠŸΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½Ρ‹ΠΌ Π²Π·ΡΡ‚ΠΈΡŽ адрСса являСтся ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π² качСствС Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ вычисляСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, находящССся ΠΏΠΎ этому адрСсу. Если ΠΌΡ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ присвоили адрСс i ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŽ p, Ρ‚ΠΎΠ³Π΄Π° *p ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎ ΠΆΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ i.

Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π² качСствС ΡƒΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π·Π° Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΎΠΉ слСдуСт ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ (ΠΈΠ»ΠΈ
Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π΄Π°ΡŽΡ‰Π΅Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ), ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚. Если i ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 6, Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

присвоит j число 6.
ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€! (Π²ΠΎΡΠΊΠ»ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π·Π½Π°ΠΊ – ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ отрицания) Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ 0, Ссли Π΅Π³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ ΠΎΡ‚Π»ΠΈΡ‡Π΅Π½ ΠΎΡ‚ нуля, ΠΈ 1, Ссли Π΅Π³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Ρ€Π°Π²Π΅Π½ 0.

Он Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°Ρ… if, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€

провСряСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…. Если x Ρ€Π°Π²Π΅Π½ Π½ΡƒΠ»ΡŽ (false), Ρ‚ΠΎ k присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0. Π’ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€! отмСняСт условиС, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π·Π° Π½ΠΈΠΌ, Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ not Π² Паскаль.

являСтся ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ дополнСния. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ 0 Π² своСм ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π΅
становится 1, Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ 1 становится 0.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ sizeof сообщаСт Ρ€Π°Π·ΠΌΠ΅Ρ€ Π΅Π³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π² Π±Π°ΠΉΡ‚Π°Ρ…. ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ
массиву ΠΈΠ· 20 Ρ†Π΅Π»Ρ‹Ρ… чисСл a Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ с 2-Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΌΠΈ Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ sizeof a Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 40.

ПослСдняя Π³Ρ€ΡƒΠΏΠΏΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² β€” это ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ увСличСния ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ.

ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ Ρ€. На сколько увСличится p, зависит ΠΎΡ‚ Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ°.
Π¦Π΅Π»Ρ‹Π΅ числа ΠΈΠ»ΠΈ символы ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π° 1, Π½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π°
Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ссли Π° являСтся массивом структур, Π° Ρ€ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ΄Π½Ρƒ ΠΈΠ· этих структур, ΠΈ ΠΌΡ‹ пишСм

Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ p ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π° ΠΎΠ΄Π½Ρƒ ΠΈΠ· структур Π² массивС, Ρ‚ΠΎ послС увСличСния p
Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° a[4] нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, насколько Π²Π΅Π»ΠΈΠΊΠΈ структуры. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ p++, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚, Π° Π½Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°.

Π³Π΄Π΅ ΠΎΠ±Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами, исходноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ k присваиваСтся n ΠΈ
Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС этого происходит ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ k. Π’ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅

сначала увСличиваСтся k, Π·Π°Ρ‚Π΅ΠΌ Π΅Π³ΠΎ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ сохраняСтся Π² n.

ПослСдний ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ – это? (Π·Π½Π°ΠΊ вопроса), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Π΄Π²ΡƒΡ… Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²
Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹Ρ… Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅ΠΌ. НапримСр, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€,

сравниваСт Ρ… с Ρƒ. Если x мСньшС y, Ρ‚ΠΎΠ³Π΄Π° i ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 6; Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС пСрСмСнная i ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ k + 1. Π‘ΠΊΠΎΠ±ΠΊΠΈ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹.

А.6. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° Π‘ состоит ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ², содСрТащих ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈ объявлСния.
Π­Ρ‚ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ скомпилированы ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Ρ‚Π΅ΠΌ Π»ΠΈΠ½ΠΊΡƒΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ (с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ°) для формирования исполняСмой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.
Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Паскаля, объявлСния ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ, поэтому всС ΠΎΠ½ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π° Β«Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅Β» Π² Ρ„Π°ΠΉΠ»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ДопускаСтся ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π²Π½Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π½Π°Ρ‡Π°Π»Π΅ Ρ„Π°ΠΉΠ»Π° ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ объявлСниСм ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. Π­Ρ‚ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ, ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² любой ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Π²ΠΎ всСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, Ссли Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово static Π½Π΅ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΠ΅Ρ‚ объявлСнию. Π’ этом случаС эти ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Π’Π΅ ΠΆΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°ΠΌ. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Π΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ для ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹.
ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ цСлочислСнной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ v, объявлСнной Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ (ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ пСрСмСнная Π½Π΅ являСтся статичСской), объявляя Π΅Π΅ Ρƒ сСбя внСшнСй:

КаТдая глобальная пСрСмСнная Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ Ρ€ΠΎΠ²Π½ΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π±Π΅Π· Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° extern, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ΄ Π½Π΅Π΅.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΏΡ€ΠΈ объявлСнии:

ΠœΠ°ΡΡΠΈΠ²Ρ‹ ΠΈ структуры Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹. Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ явно, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ρ€Π°Π²Π½ΠΎΠ΅ Π½ΡƒΠ»ΡŽ.

А.7. ΠŸΡ€Π΅ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€ CΠΈ

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

1. Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ².
2. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΌΠ΅Π½Π° макросов.
3. Условная компиляция.

ВсС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ прСпроцСссора Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ со Π·Π½Π°ΠΊΠ° числа (#) Π² 1-ΠΎΠΌ столбцС.
Когда Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° Π²ΠΈΠ΄Π°

встрСчаСтся прСпроцСссором, ΠΎΠ½ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ» prog.h, строка Π·Π° строкой, Π²
ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π° компилятору. Когда Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° #include написана ΠΊΠ°ΠΊ

опрСдСляСт макрос BLOCK_SIZE ΠΈ присваиваСт Π΅ΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1024. Π‘ этого ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°
ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ строки ΠΈΠ· 10 символов Β«BLOCK_SIZEΒ» Π² Ρ„Π°ΠΉΠ»Π΅ Π±ΡƒΠ΄Π΅Ρ‚
Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ 4-символьной строкой Β«1024Β» Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ компилятор ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ Ρ„Π°ΠΉΠ» с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ. По соглашСнию ΠΈΠΌΠ΅Π½Π° макросов ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ рСгистрС. ΠœΠ°ΠΊΡ€ΠΎΡΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Π½ΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΈΠ΅ это Π΄Π΅Π»Π°ΡŽΡ‚.

Π’Ρ€Π΅Ρ‚ΡŒΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ прСпроцСссора β€” условная компиляция. Π’ MINIX Π΅ΡΡ‚ΡŒ нСсколько
мСст, Π³Π΄Π΅ ΠΊΠΎΠ΄ написан ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ для процСссора 8088, ΠΈ этот ΠΊΠΎΠ΄ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ компиляции для Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ процСссора. Π­Ρ‚ΠΈ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ выглядят ΠΊΠ°ΠΊ Ρ‚Π°ΠΊ:

Если символ i8088 ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½, Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π°ΠΌΠΈ прСпроцСссора #ifdef i8088 ΠΈ #endif Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ прСпроцСссора; Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΎΠ½ΠΈ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ. Вызывая компилятор с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

ΠΈΠ»ΠΈ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ² Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ заявлСниС

ΠΌΡ‹ опрСдСляСм символ i8088, поэтому вСсь зависимый ΠΊΠΎΠ΄ для 8088 Π±Ρ‹Ρ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½. По ΠΌΠ΅Ρ€Π΅ развития MINIX ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ приобрСсти ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ для 68000s ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… процСссоров, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΊΠΆΠ΅.

Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ прСпроцСссор, рассмотрим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ рис. A-7 (a). Она Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ» prog.h, содСрТимоС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ компилятор Π±Ρ‹Π» Π²Ρ‹Π·Π²Π°Π½ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΡˆΠ΅Π» Ρ‡Π΅Ρ€Π΅Π· прСпроцСссор, Π²Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠΌ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° Рис. A-7 (b).

ИмСнно этот Π²Ρ‹Π²ΠΎΠ΄, Π° Π½Π΅ исходный Ρ„Π°ΠΉΠ», даСтся ΠΊΠ°ΠΊ Π²Ρ…ΠΎΠ΄ Π² CΠΈ компилятор.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ прСпроцСссор Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ» свою Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ ΡƒΠ΄Π°Π»ΠΈΠ» всС строки, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ со Π·Π½Π°ΠΊΠΎΠΌ #. Если компилятор Π±Ρ‹Π» Π±Ρ‹ Π²Ρ‹Π·Π²Π°Π½ Ρ‚Π°ΠΊ

Ρ‚ΠΎ Π±Ρ‹Π»Π° Π±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° другая ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ. Если Π±Ρ‹ ΠΎΠ½ Π±Ρ‹Π» Π²Ρ‹Π·Π²Π°Π½ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

А.8. Π˜Π΄ΠΈΠΎΠΌΡ‹

Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ рассмотрим нСсколько конструкций, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹ для CΠΈ, Π½ΠΎ Π½Π΅ распространСны Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках программирования. Для Π½Π°Ρ‡Π°Π»Π° рассмотрим ΠΏΠ΅Ρ‚Π»ΡŽ:

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ p ΠΈ q ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ указатСлями, Π° n являСтся счСтчиком. Π¦ΠΈΠΊΠ» ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ n-ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½ΡƒΡŽ строку ΠΈΠ· мСста, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ q, Π² мСсто, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ€. На ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° счСтчик ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ Π½Π΅ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ 0, ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ увСличиваСтся, поэтому ΠΎΠ½ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π° ячСйки памяти с Π±ΠΎΠ»Π΅Π΅ высоким Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ.

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° распространСнная конструкция:

которая устанавливаСт ΠΏΠ΅Ρ€Π²Ρ‹Π΅ N элСмСнтов Π° Π² 0. ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ способ написания этого Ρ†ΠΈΠΊΠ»Π° выглядит Ρ‚Π°ΠΊ:

Π’ этой Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠ΅ цСлочислСнный ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ p инициализируСтся Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Π½ΡƒΠ»Π΅Π²ΠΎΠΉ элСмСнт массива. Π¦ΠΈΠΊΠ» продолТаСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° p Π½Π΅ достиг адрСса N-ΠΎΠ³ΠΎ элСмСнта массива. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ указатСля Π³ΠΎΡ€Π°Π·Π΄ΠΎ эффСктивнСС, Ρ‡Π΅ΠΌ конструкция массива, ΠΈ поэтому ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΅Π΅.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ присвоСния ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Π² Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹Ρ… мСстах. НапримСр,

сначала Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ f, Π·Π°Ρ‚Π΅ΠΌ присваиваСт Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ a ΠΈ
Π½Π°ΠΊΠΎΠ½Π΅Ρ†, провСряСт, являСтся Π»ΠΈ ΠΎΠ½ΠΎ истинным (Π½Π΅Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ) ΠΈΠ»ΠΈ Π»ΠΎΠΆΠ½Ρ‹ΠΌ (Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ). Если Π° Π½Π΅ Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ, Ρ‚ΠΎ условиС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€

Ρ‚Π°ΠΊΠΆΠ΅ сначало Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ b ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ a, Π° Π·Π°Ρ‚Π΅ΠΌ провСряСт a, Π½Π΅ являСтся Π»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ. И этот ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ отличаСтся ΠΎΡ‚

ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сравниваСт Π΄Π²Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ выполняСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, Ссли ΠΎΠ½ΠΈ Ρ€Π°Π²Π½Ρ‹.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *