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

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

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

Если ΠΌΠΎΠΉ компилятор ΠΈΠΌΠ΅Π΅Ρ‚ встроСнный Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, Ρ‚ΠΎ обязан Π»ΠΈ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ?

ΠŸΠΎΡ‡Ρ‚ΠΈ всС компиляторы Π±ΡƒΠ΄ΡƒΡ‚ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, созданныС Π² любом тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅. Однако прСимущСства использования встроСнного тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ быстро ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π΅ΠΆΠΈΠΌΠ°ΠΌΠΈ рСдактирования ΠΈ компиляции. ВысокоорганизованныС компиляторы Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, позволяя программисту Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ ΠΊ справочным Ρ„Π°ΠΉΠ»Π°ΠΌ, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ сразу ΠΆΠ΅ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибки компиляции ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ, Π½Π΅ выходя ΠΈΠ· срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

ΠœΠΎΠ³Ρƒ Π»ΠΈ я ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°ΡŽΡ‰ΠΈΠ΅ сообщСния, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠ΅ ΠΎΡ‚ компилятора?

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

Π§Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ врСмя компиляции?

Π­Ρ‚ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ вашСго компилятора, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ (ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊ) ΠΈΠ»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (ΠΊΠΎΠ³Π΄Π° выполняСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°). Π­Ρ‚ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π»ΠΈ программисты, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΡ€Π°Ρ‚ΠΊΠΎ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Ρ‹, Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈ ΠΏΡ€ΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ошибки.

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

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

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

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

2. ΠšΠ°ΠΊ происходит компиляция исходного ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹?

3. Π’ Ρ‡Π΅ΠΌ состоит Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ°?

4. ΠšΠ°ΠΊΠΎΠ²Π° обычная ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий Π² Ρ†ΠΈΠΊΠ»Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ?

УпраТнСния

1. ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π΄Π΅Π»Π°Π΅Ρ‚, Π½Π΅ запуская Π΅Π΅ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.


1: #include <iostream.h>

2: int main()

3: {

4: int x = 5;

5: int Ρƒ = 7;

6: cout << "\n";

7: cout << x + Ρƒ << " " << x * Ρƒ;

8: cout << "\n";

9: return 0;

10: }


2. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈΠ· упраТнСния 1, Π° Π·Π°Ρ‚Π΅ΠΌ скомпилируйтС ΠΈ запуститС Π΅Π΅. Π§Ρ‚ΠΎ ΠΎΠ½Π° Π΄Π΅Π»Π°Π΅Ρ‚? Π’Π°ΠΊ Π»ΠΈ Π²Ρ‹ всС это ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΈ?

3. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ скомпилируйтС Π΅Π΅. КакиС сообщСния ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ?


1: include <iostream.h>

2: int main()

3: {

4: cout << "Hello World\n";

5: return 0;

6: }


4. Π˜ΡΠΏΡ€Π°Π²ΡŒΡ‚Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΠ· упраТнСния 3, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅, скомпонуйтС ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΅Π΅. Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ эта ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°?

Π”Π΅Π½ΡŒ 2-ΠΉ. БоставныС части ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС C++

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС C++ состоят ΠΈΠ· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… элСмСнтов. Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ этой ΠΊΠ½ΠΈΠ³ΠΈ посвящСна ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΌΡƒ описанию ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ…, Π½ΠΎ, для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ прСдставлСниС ΠΎ слаТСнной Ρ€Π°Π±ΠΎΡ‚Π΅ всСх этих элСмСнтов, Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. БСгодня Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅:

β€’ Π˜Π· ΠΊΠ°ΠΊΠΈΡ… частСй состоят ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС C++

β€’ ΠšΠ°ΠΊ эти части Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ

β€’ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ функция ΠΈ ΠΊΠ°ΠΊΠΎΠ²ΠΎ Π΅Π΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

ΠŸΡ€ΠΎΡΡ‚Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° языкС C++

Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠ°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° HELLO.CPP, привСдСнная Π½Π° занятии 1, состоит ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… элСмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ для нас интСрСс. Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ упомянутая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° рассматриваСтся Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ. Π’ листингС 2.1 Ρ€Π°Π΄ΠΈ удобства обсуТдСния ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Π°Ρ вСрсия Ρ„Π°ΠΉΠ»Π° HELLO.CPP.

Листинг 2.1. ДСмонстрация частСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ C++ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ HELLO. CPP

1: #include <iostream.h>

2:

3: int main()

4: {

5:    cout << "Hello World!\n";

6:    return 0;

7: }


Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: Hello World!


ΠΠΠΠ›Π˜Π—: Π’ строкС 1 выполняСтся Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° iostream.h Π² Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ„Π°ΠΉΠ». ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ стоит символ #, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слуТит сигналом для прСпроцСссора. ΠŸΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ запускС компилятора запускаСтся ΠΈ прСпроцСссор. Он Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ исходный тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ строки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с символа Ρ„ΡƒΠ½Ρ‚Π° (#), ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с этими строками Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ начнСтся компиляция ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Π° прСпроцСссора рассматриваСтся Π½Π° занятии 21.

Include β€” это ΠΊΠΎΠΌΠ°Π½Π΄Π° прСпроцСссору, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: "Π—Π° ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ слСдуСт имя Ρ„Π°ΠΉΠ»Π°. НуТно Π½Π°ΠΉΡ‚ΠΈ этот Ρ„Π°ΠΉΠ» ΠΈ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ содСрТимоС прямо Π² это мСсто ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹". Π£Π³Π»ΠΎΠ²Ρ‹Π΅ скобки, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ имя Ρ„Π°ΠΉΠ»Π°, ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ этот Ρ„Π°ΠΉΠ» Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π²ΠΎ всСх ΠΏΠ°ΠΏΠΊΠ°Ρ…, ΠΎΡ‚Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… для хранСния ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ². Если ваш компилятор настроСн ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, Ρ‚ΠΎ ΡƒΠ³Π»ΠΎΠ²Ρ‹Π΅ скобки ΡƒΠΊΠ°ΠΆΡƒΡ‚ прСпроцСссору Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» iostream.h слСдуСт ΠΈΡΠΊΠ°Ρ‚ΡŒ Π² ΠΏΠ°ΠΏΠΊΠ΅, содСрТащСй всС Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .h, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для вашСго компилятора. Π€Π°ΠΉΠ» iostream.h (input-output-stream β€” ΠΏΠΎΡ‚ΠΎΠΊ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ cout, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обслуТиваСт процСсс Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° экран. ПослС выполнСния строки 1 Ρ„Π°ΠΉΠ» iostream.h Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² эту ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ Π²Ρ‹ собствСнноручно Π²Π²Π΅Π»ΠΈ сюда Π΅Π³ΠΎ содСрТимоС, ΠŸΡ€Π΅ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€ запускаСтся ΠΏΠ΅Ρ€Π΅Π΄ компилятором ΠΈ выполняСт всС строки, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ с символа (#), подготавливая ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΊ компиляции.

Основной ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ начинаСтся Π² строкС 3 с Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main(). КаТдая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° языкС C++ содСрТит Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ main(). Ѐункция β€” это Π±Π»ΠΎΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выполняСт ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ нСсколько дСйствий. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ функциями, Π½ΠΎ main() β€” особая функция: ΠΎΠ½Π° вызываСтся автоматичСски ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Ѐункция main(), ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ всСм Π΄Ρ€ΡƒΠ³ΠΈΠΌ функциям, Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ HELLO.CPP функция main() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° int (ΠΎΡ‚ слова integer β€” Ρ†Π΅Π»Ρ‹ΠΉ), Π° это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΠΎ ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ эта функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΈΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС цСлочислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΎ Ρ†Π΅Π»ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² строкС 6. Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ значСния Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ Π²Π°ΠΆΠ½ΠΎ, ΠΈ Π² ΠΎΠ±Ρ‰Π΅ΠΌ-Ρ‚ΠΎ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ самой систСмой Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Π½ΠΎ стандарт языка C++ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ функция main() Π±Ρ‹Π»Π° объявлСна ΠΏΠΎ всСм ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ (ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² этом листингС).


ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: НСкоторыС компиляторы ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ main() Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π»Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° void. Π­Ρ‚ΠΎΠ³ΠΎ большС нСльзя Π΄Π΅Π»Π°Ρ‚ΡŒ Π² C++, поэтому Π²Π°ΠΌ слСдуСт ΠΈΠ·Π±Π°Π²Π»ΡΡ‚ΡŒΡΡ ΠΎΡ‚ старых ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π΅ΠΊ. ΠŸΠΎΠ·Π²ΠΎΠ»ΡŒΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ значСния Ρ‚ΠΈΠΏΠ° int ΠΈ Ρ€Π°Π΄ΠΈ этого помСститС Π² послСднСй строкС этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ return 0;.


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


ВсС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобкой ({) ΠΈ ΠΎΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобкой (}). Π€ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main() ΠΏΠΎΠΌΠ΅ΡˆΠ΅Π½Ρ‹ Π² строках 4 ΠΈ 7. ВсС, Ρ‡Ρ‚ΠΎ находится ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹ΠΌΠΈ скобками, считаСтся Ρ‚Π΅Π»ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Вся Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ нашСй ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² строкС 5. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ cout ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²Ρ‹Π²ΠΎΠ΄Π° сообщСний Π½Π° экран. Об ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ… ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‡ΡŒ Π½Π° занятии 6, Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ cout ΠΈ Π±Π»ΠΈΠ·ΠΊΠΈΠΉ Π΅ΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ cin Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрСны Π½Π° занятии 16. Π­Ρ‚ΠΈ Π΄Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, cin ΠΈ cout, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² языкС C++ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ соотвСтствСнно Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹) ΠΈ ΠΈΡ… Π²Ρ‹Π²ΠΎΠ΄Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° экран).

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ cout: Π²Π²ΠΎΠ΄ΠΈΠΌ слово cout, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ставим ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ пСрСнаправлСния Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° << (Π΄Π°Π»Π΅Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°). ВсС, Ρ‡Ρ‚ΠΎ слСдуСт Π·Π° этим ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π° экран. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ вывСсти Π½Π° экран строку тСкста, Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π΅ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ ("), ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² строкС 5.

Π‘Ρ‚Ρ€ΠΎΠΊΠ° тСкста β€” это Π½Π°Π±ΠΎΡ€ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌΡ‹Ρ… символов.

Π”Π²Π° Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… символа тСкстовой строки (\n) ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ послС слов Hello world! Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π½ΠΎΠ²ΡƒΡŽ строку. Π­Ρ‚ΠΎΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ рассмотрСнии ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° cout Π½Π° занятии 17. Ѐункция main() оканчиваСтся Π² строкС 7.

ΠšΡ€Π°Ρ‚ΠΊΠΎ ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ cout

На занятии 16 Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ cout для Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° экран. А ΠΏΠΎΠΊΠ°, Π½Π΅ вдаваясь Π² Π΄Π΅Ρ‚Π°Π»ΠΈ использования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° cout, скаТСм, Ρ‡Ρ‚ΠΎ для Π²Ρ‹Π²ΠΎΠ΄Π° значСния Π½Π° экран Π½ΡƒΠΆΠ½ΠΎ ввСсти слово cout, Π° Π·Π° Π½ΠΈΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π²ΠΎΠ΄Π° (<<), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ состоит ΠΈΠ· Π΄Π²ΡƒΡ… символов "мСньшС" (<). НСсмотря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π²Π²ΠΎΠ΄ΠΈΡ‚Π΅ Π΄Π²Π° символа, компилятор C++ воспринимаСт ΠΈΡ… ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€.