Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «Освой ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π‘++ Π·Π° 21 дСнь.Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 8

Автор ДТСсс Π›ΠΈΠ±Π΅Ρ€Ρ‚ΠΈ

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π’Ρ‹ ΡƒΠΆΠ΅ познакомились с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ main(), ΠΏΡ€Π°Π²Π΄Π°, это нСобычная, СдинствСнная Π² своСм Ρ€ΠΎΠ΄Π΅ функция. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ½ΠΎΡΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·Ρƒ, функция Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Π° Π²ΠΎ врСмя сСанса Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Ѐункция main() вызываСтся Π½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выполняСтся ΠΏΠΎ строкам Π² порядкС ΠΈΡ… располоТСния Π² исходном тСкстС Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ встрСтится Π²Ρ‹Π·ΠΎΠ² ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π—Π°Ρ‚Π΅ΠΌ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ пСрСдаСтся строкам этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ПослС выполнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ возвращаСтся Ρ‚ΠΎΠΉ строкС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, которая слСдуСт сразу Π·Π° Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π•ΡΡ‚ΡŒ прСкрасная аналогия для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ. НапримСр, Ссли Π²ΠΎ врСмя рисования Ρƒ вас ломаСтся ΠΊΠ°Ρ€Π°Π½Π΄Π°Ρˆ, Π²Ρ‹ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π°Π΅Ρ‚Π΅ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°Ρ‚Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚Π΅ Π΅Π³ΠΎ. ПослС этого Π²Ρ‹ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ Ρ‚ΠΎΠΌΡƒ мСсту рисунка, Π³Π΄Π΅ сломался ΠΊΠ°Ρ€Π°Π½Π΄Π°Ρˆ. Когда ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° нуТдаСтся Π² Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ сСрвисной ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, вызываСтся функция, отвСтствСнная Π·Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, послС Ρ‡Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ‚ΠΎΠ³ΠΎ мСста, Π³Π΄Π΅ Π±Ρ‹Π»Π° Π²Ρ‹Π·Π²Π°Π½Π° функция. Π­Ρ‚Π° идСя дСмонстрируСтся Π² листингС 2.4.

Листинг 2.4. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

1: #include <iostream.h>

3: // Ѐункция Demonstration Function

4: // Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ сообщСниС

5: void DemonstrationFunction()

6: {

7:    cout << "In DemonstrationFunction\n";

8: }

10: // Ѐункция main Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ сообщСниС, Π·Π°Ρ‚Π΅ΠΌ

11: // Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ DemonstrationFunction ΠΈ

12: // Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран Π²Ρ‚ΠΎΡ€ΠΎΠ΅ сообщСниС.

13: int main()

14: {

15:    cout << "In main\n" ;

16:    DemonstrationFunction();

17:    cout << " Back in main\n";

18:    return 0;

19: }


Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

In main

In DemonstrationFunction

Back in main


Π’ строках 5β€”8 опрСдСляСтся функция DemonstrationFunction(). Она Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран сообщСниС ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

Ѐункция main() начинаСтся Π² строкС 13, ΠΈ Π² строкС 15 выводится Π½Π° экран сообщСниС, ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»ΡΡŽΡ‰Π΅Π΅ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сСйчас ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ находится Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main(). ПослС Π²Ρ‹Π²ΠΎΠ΄Π° этого сообщСния Π² строкС 16 вызываСтся функция DemonstrationFunction(). Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ этого Π²Ρ‹Π·ΠΎΠ²Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, содСрТащиСся Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DemonstrationFunction(). Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС вся функция состоит ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, содСрТащСйся Π² строкС 7, которая Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ сообщСниС. По Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ выполнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DemonstrationFunction() (строка 8) ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ возвращаСтся Ρ‚ΡƒΠ΄Π°, ΠΎΡ‚ΠΊΡƒΠ΄Π° эта функция Π±Ρ‹Π»Π° Π²Ρ‹Π·Π²Π°Π½Π°. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ продолТаСтся со строки 17, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ функция main() Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ сообщСниС.

ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Π»ΠΈΠ±ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π»ΠΈΠ±ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° void, Ρ‚.Π΅. Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚. Π€ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая складываСт Π΄Π²Π° Ρ†Π΅Π»Ρ‹Ρ… числа ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ суммы, слСдуСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΡƒΡŽ цСлочислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ, которая Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ сообщСниС, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π½Π΅Ρ‡Π΅Π³ΠΎ, поэтому для Π½Π΅Π΅ задаСтся Ρ‚ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° void.

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ состоят ΠΈΠ· Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΈ Ρ‚Π΅Π»Π°. Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ содСрТит установки Ρ‚ΠΈΠΏΠ° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния, ΠΈΠΌΠ΅Π½ΠΈ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ значСния. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ссли функция ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для слоТСния Π΄Π²ΡƒΡ… чисСл, Ρ‚ΠΎ эти числа Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. Π’ΠΎΡ‚ ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ‚Π°ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

int Sum(int Π°, int b)

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ β€” это объявлСниС Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… значСния, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. РСальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠ΅ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, называСтся Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ. МногиС программисты ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ эти Π΄Π²Π° понятия ΠΊΠ°ΠΊ синонимы. Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ смСшСниС этих Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ² ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠΌ нСпрофСссионализма. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, это ΠΈ Ρ‚Π°ΠΊ, Π½ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ эти Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ взаимозамСняСмы.

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


ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅:  Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π° занятии 5; Ρ‚ΠΈΠΏΡ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… функциями, β€” Π½Π° занятии 3. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ, прСдставлСнная Π½Π° этом занятии, являСтся хотя ΠΈ ΠΎΠ±Π·ΠΎΡ€Π½ΠΎΠΉ, Π½ΠΎ Π²ΠΏΠΎΠ»Π½Π΅ достаточной для усвоСния ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ практичСски Π²ΠΎ всСх ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…, прСдставлСнных Π² этой ΠΊΠ½ΠΈΠ³Π΅.


Π’ листингС 2.5 дСмонстрируСтся функция, которая ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° цСлочислСнных ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ цСлочислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. НС Π±Π΅ΡΠΏΠΎΠΊΠΎΠΉΡ‚Π΅ΡΡŒ ΠΏΠΎΠΊΠ° насчСт синтаксиса ΠΈΠ»ΠΈ особСнностСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ†Π΅Π»Ρ‹ΠΌΠΈ значСниями (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, int x): эта Ρ‚Π΅ΠΌΠ° ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ раскрываСтся Π½Π° занятии 3.

Листинг 2.5. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования простой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (FUNC.CPP)

1: #include <iostream.h>

2: int Add (int x, int Ρƒ)

3: {

4:

5:    cout << "In Add(), received " << x << " and " << Ρƒ << "\n";

6:    return (x+y);

7: }

8:

9:  int main()

10: {

11:    cout << "I'm in main()!\n";

12:    int Π°, b, с;

13:    cout << "Enter two numbers: ";

14:    cin >> Π°;

15:    cin >> b;

16:    cout << "\nCalling Add()\n";

17:    c=Add(a,b);

18:    cout << "\nBack in main().\n";

19:    cout << "с was set to " << с;

20:    cout << "\nExiting...\n\n";

21:    return 0;

22: }


Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

I'm in main()!

Enter two numbers: 3 5


Calling Add()

In Add(), received 3 and 5


Back in main().

c was set to 8

Exiting...


ΠΠΠΠ›Π˜Π—: Ѐункция Add() ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π² строкС 2. Она ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° цСлочислСнных ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ цСлочислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π‘Π°ΠΌΠ° ΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° начинаСтся Π² строкС 9, выводя Π½Π° экран ΠΏΠ΅Ρ€Π²ΠΎΠ΅ сообщСниС. Π—Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ прСдлагаСтся ввСсти Π΄Π²Π° числа (строки 13β€”15). ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ числа, раздСляя ΠΈΡ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚, ΠΊΠ»Π°Π²ΠΈΡˆΡƒ <Enter>. Π’ строкС 17 функция main() ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Add() Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π΄Π²Π° числа, Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Add(), которая начинаСтся Π² строкС 2. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π° ΠΈ b выводятся Π½Π° экран, Π° Π·Π°Ρ‚Π΅ΠΌ ΡΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ΡΡ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ возвращаСтся Π² строкС 6, ΠΈ Π½Π° этом функция Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ.

РСзюмС

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

Вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹

ΠšΠ°ΠΊΡƒΡŽ Ρ€ΠΎΠ»ΡŒ выполняСт Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° #include?

Π­Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° для прСпроцСссора, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ автоматичСски запускаСтся ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ компилятора. Данная Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° слуТит для ввСдСния содСрТимого Ρ„Π°ΠΉΠ»Π°, имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ стоит послС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹, Π² исходный тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ символами ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² // ΠΈ /*?

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌ слСшСм (//), Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° строки. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ слСшСм со Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΎΠΉ (/*), ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ΡΡ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ встрСтится символ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ коммСнтария (*/). ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π΄Π°ΠΆΠ΅ ΠΊΠΎΠ½Π΅Ρ† Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ дСйствиС коммСнтария, Π½Π°Ρ‡Π°Π²ΡˆΠ΅Π³ΠΎΡΡ с ΠΏΠ°Ρ€Ρ‹ символов (/*). Если Π²Ρ‹ Π·Π°Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ коммСнтария (*/), Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ сообщСниС ΠΎΠ± ошибкС Π²ΠΎ врСмя компиляции.

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌΠΈ ΠΈ ΠΏΠ»ΠΎΡ…ΠΈΠΌΠΈ коммСнтариями?

Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ сообщит Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŽ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ здСсь ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ эти ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΠ»ΠΎΡ…ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ констатируСт Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ дСлаСтся Π² Π΄Π°Π½Π½ΠΎΠΉ строкС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π² ΠΈΠ΄Π΅Π°Π»Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ сами Π·Π° сСбя, Π° Π»ΠΎΠ³ΠΈΠΊΠ° Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π±Ρ‹Π»Π° проста ΠΈ понятна Π±Π΅Π· особых ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π².

ΠšΠΎΠ»Π»ΠΎΠΊΠ²ΠΈΡƒΠΌ

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

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ вопросы

1. Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ компилятором ΠΈ прСпроцСссором?

2. Π’ Ρ‡Π΅ΠΌ состоит ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main()?

3. ΠšΠ°ΠΊΠΈΠ΅ Π΄Π²Π° Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ ΠΈ Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°?