Π Π°Π·Π½ΠΎΠ΅

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ си: объявлСниС, инициализация, Ρ‚ΠΈΠΏΡ‹, прСдставлСниС ΠΈ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² языкС Π‘ΠΈ. ОбъявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Π‘ΠΈ.

ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, приостановитС Ρ€Π°Π±ΠΎΡ‚Ρƒ AdBlock Π½Π° этом сайтС.



Π§Ρ‚ΠΎΠ±Ρ‹ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² своСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π΄Π°Π½Π½Ρ‹Π΅, Π²Π°ΠΌ понадобятся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ эти ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, вспоминая Π½Π°ΡˆΡƒ аналогию с ΠΊΠΎΡ€ΠΎΠ±ΠΊΠ°ΠΌΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² ΠΊΠΎΡ€ΠΎΠ±ΠΊΡƒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Π΅Ρ‘, эту ΡΠ°ΠΌΡƒΡŽ ΠΊΠΎΡ€ΠΎΠ±ΠΊΡƒ, Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π±Ρ‹ сначала Π³Π΄Π΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Ρ€Π°Π·Π΄ΠΎΠ±Ρ‹Ρ‚ΡŒ.

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

Как ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ?

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΅Ρ‘ Ρ‚ΠΈΠΏ ΠΈ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΅Ρ‘ имя. Ну ΠΈ Π½Π΅ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ «;». ΠžΠ±Ρ‰Π°Ρ стуктура объявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС.

Рис.1. ΠžΠ±Ρ‰ΠΈΠΉ синтаксис объявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.».

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½Π° рисункС ΠΌΡ‹ создаём ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ с ΠΈΠΌΠ΅Π½Π΅ΠΌ num, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ†Π΅Π»Ρ‹Π΅ числа. На Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ собираСмся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ для хранСния Ρ†Π΅Π»Ρ‹Ρ… чисСл, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… int.

Π•Ρ‰Ρ‘ ΠΏΠ°Ρ€ΠΎΡ‡ΠΊΠ° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²:

Листинг 1. ОбъявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

int z;  // пСрСмСнная z  Ρ†Π΅Π»ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°
char w; // пСрСмСнная w символьного Ρ‚ΠΈΠΏΠ°

Для ΠΈΠΌΡ‘Π½ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π°Π΄ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ.

Π’ качСствС ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ любая ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов латинского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°, Ρ†ΠΈΡ„Ρ€ ΠΈ Π·Π½Π°ΠΊΠ° Π½ΠΈΠΆΠ½Π΅Π³ΠΎ подчСркивания «_», которая начинаСтся с Π±ΡƒΠΊΠ²Ρ‹.

На самом Π΄Π΅Π»Π΅, Π½Π° имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΅ΡΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ограничСния, Π½ΠΎ ΠΌΡ‹ ΠΏΠΎΠΊΠ° Π² Ρ‚Π°ΠΊΠΈΠ΅ Π΄Π΅Ρ‚Π°Π»ΠΈ Π²Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ. Π”Π°Π²Π°ΠΉΡ‚Π΅ Π»ΡƒΡ‡ΡˆΠ΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈΠΌΡ‘Π½.

ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

Peremennaya, flag, f3, var4, KolichestvoBukv, fd4s, FLaG, key_number

ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

2num – начинаСтся с Ρ†ΠΈΡ„Ρ€Ρ‹
num flat – содСрТит ΠΏΡ€ΠΎΠ±Π΅Π» Π² ΠΈΠΌΠ΅Π½ΠΈ
nomer-telefona – содСрТит дСфис

И Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ Π²Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚. Π’ языкС программирования Π‘ΠΈ рСгистр Π±ΡƒΠΊΠ² ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ΅Π½. НапримСр, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ flag, FLAG, FlAg, fLAg — это всё Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΅ΡΡ‚ΡŒ ряд слов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для названия ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. НапримСр, int, void, return ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Π­Ρ‚ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ для Π½ΡƒΠΆΠ΄ самого языка ΠΈ Π½ΠΈΠ³Π΄Π΅ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ мСстС Π½Π΅ ΠΌΠΎΠ³Ρƒ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹.

ΠšΡΡ‚Π°Ρ‚ΠΈ, Π·Π° ΠΎΠ΄Π½ΠΎ объявлСниС ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ сразу нСсколько ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°.

Листинг 2. ОбъявлСниС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

int a,c; // объявляСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ a ΠΈ c Ρ†Π΅Π»ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°
double x, y, z; // объявляСм сразу Ρ‚Ρ€ΠΈ вСщСствСнныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ 

Всё просто ΠΈ Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ. Π‘Π½Π°Ρ‡Π°Π»Π° ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΠΈΡ… ΠΈΠΌΠ΅Π½Π°, Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ запятой.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ Π² памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

ΠŸΠ°Ρ€Ρƒ слов ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ выглядит объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

МоТно ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ объявлСнии ΠΌΡ‹ сообщаСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π²Ρ‹Π΄Π΅Π»ΠΈΠ» ΠΏΠΎΠ΄ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ мСсто Π² памяти ΠΈ связал это мСсто ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ мСста, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΎ Π² памяти для хранСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, зависит ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° этой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠŸΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ эту ΠΌΡ‹ΡΠ»ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ рисунком.

Листинг 3. ОбъявлСниС Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

int w; // объявляСм цСлочислСнной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ w
double z; // объявляСм вСщСствСнной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ z 

Рис.3. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

На рисункС условно ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π° ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ€ ячССк, Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ. ΠŸΡ€ΠΈ этом вСщСствСнная пСрСмСнная Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π΅ ячСйки, Π° цСлочислСнная всСго ΠΎΠ΄Π½Ρƒ. Π­Ρ‚ΠΎ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ (Π΄Π²Π° ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ) условноС. На самом Π΄Π΅Π»Π΅, Π² вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ пСрСмСнная вСщСствСнного Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Ρ€Π°Π·Π° большС мСста Π² памяти, Ρ‡Π΅ΠΌ цСлочислСнная пСрСмСнная.

C++ | ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

ПослСднСС обновлСниС: 03.08.2020

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

ΠŸΠ΅Ρ€Π΅Π΄ использованиСм Π»ΡŽΠ±ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π½Π°Π΄ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ. Бинтаксис опрСдСлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Ρ‚ΠΈΠΏ_ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ имя_ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ;

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ:

int age;

Π—Π΄Π΅ΡΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° пСрСмСнная age, которая ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ int. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ прСдставляСт собой ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ,
Ρ‚ΠΎ послС Π½Π΅Π³ΠΎ ставится Ρ‚ΠΎΡ‡ΠΊΠ° с запятой.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ C++ — рСгистрозависимый язык, Π° это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ рСгистр символов ΠΈΠΌΠ΅Π΅Ρ‚ большоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΊΠΎΠ΄Π΅
Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒΡΡ Π΄Π²Π΅ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅:


int age;
int Age;

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ пСрСмСнная Age Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ ΠΈ пСрСмСнная age.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² качСствС ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова языкС C++, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, for ΠΈΠ»ΠΈ if.
Но Ρ‚Π°ΠΊΠΈΡ… слов Π½Π΅ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ: alignas, alignof, asm, auto, bool, break, case, catch, char, char16_t, char32_t, class, const, constexpr,
const_cast, continue, decltype, default, delete, do, double, dynamic_cast, else, enum, explicit, export, extern, false, float, for, friend, goto,
if, inline, int, long, mutubale, namespace, new, noexcept, nullptr, operator, private, protected, public, register,
reinterpret_cast, return, short, signed, sizeof, static, static_assert, static_cast, struct, switch, template, this, thread_local, throw, true,
try, typedef, typeid, typename, union, unsigned, using, virtual, void, volatile, wchar_t, while.

Π’Π°ΠΊΠΆΠ΅ нСльзя ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ большС ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:


int age;
int age;

ПодобноС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π½Π° этапС компиляции.

И Π² Π΄ΠΎΠ²Π΅Ρ€ΡˆΠ΅ΠΈΠ΅ слСдуСт ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ стоит Π΄Π°Π²Π°Ρ‚ΡŒ осмыслСнныС ΠΈΠΌΠ΅Π½Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎΠ± ΠΈΡ… ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ.

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ

ПослС опрСдСлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅:


int age;
age = 20;

НапримСр, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ Π² ΠΏΡ€ΠΎΠ³Π°ΠΌΠΌΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΈ Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° консоль:


#include <iostream>

int main()
{
	int age;
	age = 28;
	std::cout<<"Age = " << age;
	return 0;
}

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² << ΠΌΠΎΠΆΠ½ΠΎ вывСсти нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π° консоль.

ПослС компиляции ΠΈ запуска скомпилированной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° консоль Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ число 28.

Однако Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ сразу ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄Π°Ρ‚ΡŒ Π΅ΠΉ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠ΅ΠΌ называСтся ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ присвоСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния:


#include <iostream>

int main()
{
	int age = 28;
	std::cout<<"Age = " << age;
	return 0;
}

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

Если ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π½Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚ΠΎ происходит Π΅Π΅ инициализация ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. И пСрСмСнная ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ,
ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ зависит ΠΎΡ‚ мСста, Π³Π΄Π΅ эта пСрСмСнная ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°.

Если пСрСмСнная, которая прСдставляСт встроСнный Ρ‚ΠΈΠΏ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚ΠΈΠΏ int), ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ ΠΎΠ½Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Если пСрСмСнная встроСнного Ρ‚ΠΈΠΏΠ°
ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π²Π½Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ ΠΎΠ½Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ соотвСтствуСт Π΅Π΅ Ρ‚ΠΈΠΏΡƒ. Для числовых Ρ‚ΠΈΠΏΠΎΠ² это число 0. НапримСр:


#include <iostream>

int x;
int main()
{
	int y;
	std::cout <<"X = " << x << "\n";
	std::cout <<"Y = " << y;
	
	return 0;
}

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ x ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π²Π½Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈ поэтому ΠΎΠ½Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ — число 0.

Π“ΠΎΡ€Π°Π·Π΄ΠΎ слоТнСС Π΄Π΅Π»ΠΎ обстоит с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ y, которая ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main — Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ, ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ
ΠΎΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ компилятора. Π’ частности, Π²Ρ‹Π²ΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, скомпилированной с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ компилятора G++, ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

А Π² Visual Studio отсутствиС значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ y Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Но Π² любом случаС ΠΏΠ΅Ρ€Π΅Π΄ использованиСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π»ΡƒΡ‡ΡˆΠ΅ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π½Π°Π·Π½Π°Ρ‡Π°Ρ‚ΡŒ Π΅ΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π° Π½Π΅ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

ИзмСнСниС значСния

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ… значСния:


#include <iostream>

int main()
{
	int x = 6;
	x = 8;
	x = 10;
	std::cout <<"X = " << x; // X = 10
	
	return 0;
}

Π’Π½Π΅ΡˆΠ½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. Π―Π·Ρ‹ΠΊ Π‘ΠΈ — руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Π’Π½Π΅ΡˆΠ½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

Β Β Β  ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ, описанная Π²Π½Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, являСтся внСшнСй. Π’Π½Π΅ΡˆΠ½ΡŽΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π΅Π΅, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова extern. Описания ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

int errupt;Β Β  /* Π’Ρ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, описанныС Π²Π½Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ */

char coal;

double up;

main( )

{

extern int errupt;Β  /* объявлСно, Ρ‡Ρ‚ΠΎ 3 ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ */

extern char coal;Β /* ΡΠ²Π»ΡΡŽΡ‚ΡΡ внСшними */

extern double up;

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

Β Β Β Β  Если слово extern Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π² описаниС Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ ΠΏΠΎΠ΄ этим ΠΈΠΌΠ΅Π½Π΅ΠΌ создаСтся новая автоматичСская пСрСмСнная. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΊΠ°ΠΊ «Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ» с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ слова auto ΠΈ Ρ‚Π΅ΠΌ самым ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ это вашС Π½Π°ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅, Π° Π½Π΅ ΠΎΠΏΠ»ΠΎΡˆΠ½ΠΎΡΡ‚ΡŒ. Π’Ρ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… комбинация описаний:

/* ΠŸΡ€ΠΈΠΌΠ΅Ρ€1 */

int hocus;

main( ) {

extern int hocus; /* hocus описана внСшнСй */

}

magic( ) {

extern intΒ hocus;

}

Π—Π΄Π΅ΡΡŒ Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½Π° внСшняя пСрСмСнная hocus, ΠΈ ΠΎΠ½Π° извСстна ΠΎΠ±Π΅ΠΈΠΌ функциям main( ) ΠΈ magic( ).

/* ΠŸΡ€ΠΈΠΌΠ΅Ρ€2 */

int hocus ;

main( )

{

extern int hocus;   /* hocus описана внСшнСй */

}

magic( )

{

/* hocus нС описана совсСм */

}

Π‘Π½ΠΎΠ²Π° Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½Π° внСшняя пСрСмСнная hocus, извСстная ΠΎΠ±Π΅ΠΈΠΌ функциям. На этот Ρ€Π°Π· ΠΎΠ½Π° извСстна Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈmagic( ) ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

/* ΠŸΡ€ΠΈΠΌΠ΅Ρ€3 */

int hocus;

main( )

{

int hocus;   /* hocus описана и

Β Β Β Β Β Β Β  являСтся автоматичСской ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ */

}

magic( )

Β {

auto int hocus;Β /* hocus описана автоматичСской */

}

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ созданы Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ hocusΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main( )являСтся автоматичСской ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ локальной для main( ), Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ magic( )ΠΎΠ½Π° явно описана автоматичСской ΠΈ извСстна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для magic( ). Π’Π½Π΅ΡˆΠ½ΡΡ пСрСмСнная hocus нСизвСстна Π½ΠΈ main( ), Π½ΠΈ magic( ), Π½ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ извСстна любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Ρ„Π°ΠΉΠ»Π΅, которая Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ своСй собствСнной локальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ hocus.

Β Β Β Β  Π­Ρ‚ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ дСйствия Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Они ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚, ΠΏΠΎΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΈ Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ эти ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ доступны любой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΎΠ½ΠΈ Π½Π΅ исчСзнут, Ссли какая-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΎΠ΄Π½Π° функция Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ.

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ Π½Π° страничкС

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Π³Π»Π°Π²Π° >

ДАННЫЕ: ΠŸΠ•Π Π•ΠœΠ•ΠΠΠ«Π• И КОНБВАНВЫ. Π―Π·Ρ‹ΠΊ Π‘ΠΈ

ДАННЫЕ: ΠŸΠ•Π Π•ΠœΠ•ΠΠΠ«Π• И КОНБВАНВЫ

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, выполняя ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΎΠΉ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Он ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ числа, ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π°, Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ распознаваниСм Ρ€Π΅Ρ‡ΠΈ ΠΈ изобраТСния Π½Π° экранС видСодисплСя, Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ ΠΎΡ€Π±ΠΈΡ‚Ρ‹ ΠΊΠΎΠΌΠ΅Ρ‚, ΠΏΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ список ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹Ρ… адрСсов Π°Π±ΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Ρ‡Π΅Ρ€Ρ‚ΠΈΡ‚ΡŒ Ρ„ΠΈΠ³ΡƒΡ€Ρ‹, Π΄Π΅Π»Π°Ρ‚ΡŒ логичСскиС Π²Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΅Ρ‰Π΅, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ сСбС ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ. Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ всСм этим, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с «Π΄Π°Π½Π½Ρ‹ΠΌΠΈ» — числами ΠΈ символами, Ρ‚. Π΅. ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСсут Π² сСбС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΡƒΡŽ для использования. НСкоторыС Π΄Π°Π½Π½Ρ‹Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ значСниям Π΅Ρ‰Π΅ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π°Ρ‡Π½Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ, Π° послС Π΅Π΅ запуска ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ значСния Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ Π½Π° всСм протяТСнии Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚ΠΎ «ΠΊΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹». Π”Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ, ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΈΠΌ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ присвоСны значСния Π²ΠΎ врСмя выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹; ΠΎΠ½ΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ «ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ». (ΠœΡ‹ ΡƒΠΆΠ΅ использовали Π΄Π°Π½Π½Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ Π³Π»Π°Π²Π΅, Π½ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Π²Ρ‹ Π·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ с Π½ΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ здСсь.) Π’ нашСй простой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ weight — это пСрСмСнная; число 16.0 — константа. Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ числа 400.00? Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ†Π΅Π½Π° Π·ΠΎΠ»ΠΎΡ‚Π° Π½Π΅ остаСтся Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΉ, Π½ΠΎ Π² нашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΡ‹ считаСм Π΅Π΅ константой.

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

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ Π½Π° страничкС

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Π³Π»Π°Π²Π° >

АвтоматичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. Π―Π·Ρ‹ΠΊ Π‘ΠΈ — руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

АвтоматичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

Β Β Β Β  По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, описанныС Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΡΠ²Π»ΡΡŽΡ‚ΡΡ автоматичСскими. МоТно, ΠΎΠ΄Π½Π°ΠΊΠΎ, это ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚ΡŒ явно с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова auto:

main( )

{

auto int plox;

Π’Π°ΠΊ ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚, Ссли хотят, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π²Π½Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Β Β Β Β  АвтоматичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ дСйствия. Волько функция, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ пСрСмСнная ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°, «Π·Π½Π°Π΅Ρ‚» Π΅Π΅. (ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ для связи значСния ΠΈ адрСса ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ это частичноС ΠΈ косвСнноС «Π·Π½Π°Π½ΠΈΠ΅».) Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ с Ρ‚Π΅ΠΌ ΠΆΠ΅ самым ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π½ΠΎ это Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ нСзависимыС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, находящиСся Π² Ρ€Π°Π·Π½Ρ‹Ρ… ячСйках памяти.

Β Β Β Β  АвтоматичСская пСрСмСнная Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, содСрТащСй Π΅Π΅. Когда функция Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚ΡƒΠ΄Π°, ΠΎΡ‚ΠΊΡƒΠ΄Π° Π΅Π΅ Π²Ρ‹Π·Π²Π°Π»ΠΈ, автоматичСская пСрСмСнная исчСзаСт. Π―Ρ‡Π΅ΠΉΠΊΠ° памяти ΠΌΠΎΠΆΠ΅Ρ‚ снова ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Ρ‡Π΅Π³ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ.

Β Β Β Β  Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ Π΅Ρ‰Π΅ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ± области дСйствия автоматичСской ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ: ΠΎΠ±Π»Π°ΡΡ‚ΡŒ дСйствия ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° Π±Π»ΠΎΠΊΠΎΠΌ ({ }), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ пСрСмСнная описана. ΠœΡ‹ всСгда Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ наши ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² Π½Π°Ρ‡Π°Π»Π΅ Ρ‚Π΅Π»Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Π±Π»ΠΎΠΊΠ°), Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΎΠ±Π»Π°ΡΡ‚ΡŒΡŽ дСйствия ΠΈΡ… являСтся вся функция. Однако Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠΎΠ΄Π±Π»ΠΎΠΊΠ°. Π’ΠΎΠ³Π΄Π° пСрСмСнная Π±ΡƒΠ΄Π΅Ρ‚ извСстна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² этой части Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈ создании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, программисты Ρ€Π΅Π΄ΠΊΠΎ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π²ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ упомянутоС свойство. Но ΠΈΠ½ΠΎΠ³Π΄Π° Ρ‚ΠΎΡ€ΠΎΠΏΠ»ΠΈΠ²Ρ‹Π΅ программисты ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ, особСнно ΠΊΠΎΠ³Π΄Π° ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ быстрСС внСсти ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹.

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ Π½Π° страничкС

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Π³Π»Π°Π²Π° >

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… C ++


ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ C ++

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ — это ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ для хранСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Π°Π½Π½Ρ‹Ρ….

Π’ C ++ сущСствуСт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ словами), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

  • int — Ρ…Ρ€Π°Π½ΠΈΡ‚ Ρ†Π΅Π»Ρ‹Π΅ числа (Ρ†Π΅Π»Ρ‹Π΅ числа) Π±Π΅Π· дСсятичных Π·Π½Π°ΠΊΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 123 ΠΈΠ»ΠΈ -123
  • double — Ρ…Ρ€Π°Π½ΠΈΡ‚ числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой с дСсятичными дробями, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 19,99 ΠΈΠ»ΠΈ -19,99
  • char — Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ символы, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Β«aΒ» ΠΈΠ»ΠΈ Β«BΒ».ЗначСния символов Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ
  • строка — Ρ…Ρ€Π°Π½ΠΈΡ‚ тСкст, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Β«Hello WorldΒ».
    Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ значСния Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ
  • bool — сохраняСт значСния с двумя состояниями:
    ΠΏΡ€Π°Π²Π΄Π° ΠΈΠ»ΠΈ лоТь

ОбъявлСниС (созданиС) ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ ΠΈ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π΅ΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅:

Бинтаксис

Ρ‚ΠΈΠΏ пСрСмСнная = Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ;

Π“Π΄Π΅ Ρ‚ΠΈΠΏ — ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚ΠΈΠΏΠΎΠ² C ++ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, int ), ΠΈ
пСрСмСнная — это имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, x ΠΈΠ»ΠΈ
myName ).Π—Π½Π°ΠΊ равСнства ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для присвоСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, которая Π΄ΠΎΠ»ΠΆΠ½Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ число, рассмотритС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

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

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ с ΠΈΠΌΠ΅Π½Π΅ΠΌ myNum Ρ‚ΠΈΠΏΠ° int ΠΈ присвойтС Π΅ΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 15 :

int myNum = 15;
cout << myNum;

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ запуска Β»

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π±Π΅Π· присвоСния значСния ΠΈ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ·ΠΆΠ΅:

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Ссли Π²Ρ‹ присвоитС Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΎΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅:

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

int myNum = 15; // myNum Ρ€Π°Π²Π½ΠΎ 15
myNum = 10; // Π’Π΅ΠΏΠ΅Ρ€ΡŒ myNum Ρ€Π°Π²Π½ΠΎ 10
cout << myNum; // Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ 10

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ запуска Β»


ΠŸΡ€ΠΎΡ‡ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹

ДСмонстрация Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…:

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

int myNum = 5;
// Π¦Π΅Π»ΠΎΠ΅ число (Ρ†Π΅Π»ΠΎΠ΅ Π±Π΅Π· дСсятичных Π·Π½Π°ΠΊΠΎΠ²)
double myFloatNum = 5.99;
// Число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой (с дСсятичными Π·Π½Π°ΠΊΠ°ΠΌΠΈ)
char myLetter = ‘D’;
// Π‘ΠΈΠΌΠ²ΠΎΠ»
string myText = «Hello»;
// Π‘Ρ‚Ρ€ΠΎΠΊΠ° (тСкст)
bool
myBoolean = true; // логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (истина ΠΈΠ»ΠΈ
лоТь)

Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ большС ΠΎΠ± ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ°Ρ… Π² Π³Π»Π°Π²Π΅ Β«Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…Β».


ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ cout ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ вмСстС с <<
ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ для отобраТСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ….

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ тСкст ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅ ΠΈΡ… Π·Π½Π°ΠΊΠΎΠΌ <<
ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€:

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

int myAge = 35;
cout << "МнС" << myAge << "Π»Π΅Ρ‚.";

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ запуска Β»


Π‘Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ вмСстС

Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ +
ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€:

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

int x = 5;
int y = 6;
int сумма = Ρ… + Ρƒ;
cout << sum;

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ запуска Β»


.

строковых ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

строковых ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅
- ИндСкс


Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

EES ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ числовыС ΠΈ строковыС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. Бтроковая пСрСмСнная идСнтифицируСтся ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ заканчиваСтся символом $. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ строкового массива ΠΈΠΌΠ΅Π΅Ρ‚ символ $ нСпосрСдствСнно ΠΏΠ΅Ρ€Π΅Π΄ Π»Π΅Π²ΠΎΠΉ скобкой, содСрТащСй индСкс массива. Имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с Π±ΡƒΠΊΠ²Ρ‹ ΠΈ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· 30 ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ символов, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ символы $.

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ установлСны ΠΊΠ°ΠΊ строковыС константы, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€

A $ = Β«Π΄Π²ΡƒΠΎΠΊΠΈΡΡŒ ΡƒΠ³Π»Π΅Ρ€ΠΎΠ΄Π°Β»

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ установлСны Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ строковым ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,

ΠΌΠ»Ρ€Π΄ Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ² =

канадских Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ²

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для управлСния строковыми ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈ прСобразования ΠΈΡ… Π² числовыС значСния ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ.

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ функциям, модулям ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈΠ»ΠΈ внСшним функциям ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°ΠΌ.

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

.

Ρ‡ = ΡΠ½Ρ‚Π°Π»ΡŒΠΏΠΈΡ (R $, T = T, P = P)

Бтроковая пСрСмСнная ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для указания ΠΈΠΌΠ΅Π½ΠΈ Ρ„Π°ΠΉΠ»Π° поиска ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½ΠΈ столбца для использования с ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ интСрполяции ΠΈΠ»ΠΈ поиска, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€.Π³.,

m = Π˜Π½Ρ‚Π΅Ρ€ΠΏΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (Ρ„Π°ΠΉΠ» $, столбСц 1 $, столбСц 2 $, столбСц 1 $ = x)

k = Поиск (Ρ„Π°ΠΉΠ» $, строка, столбСц $)

Бтроковая пСрСмСнная ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для указания Π΅Π΄ΠΈΠ½ΠΈΡ† измСрСния Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. НапримСр,

U $ = 'ΠΊΠ”ΠΆ / ΠΊΠ³'

Ρ‡ = 15 [U $]

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ справа ΠΎΡ‚ 15 устанавливаСт Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ измСрСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ h Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ U $. Π•Π΄ΠΈΠ½ΠΈΡ†Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Β«Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉΒ» ΠΈΠ»ΠΈ Ρ‰Π΅Π»ΠΊΠ½ΡƒΠ² h Π² ΠΎΠΊΠ½Π΅ «РСшСниС».Π’ любом случаС EES распознаСт, Ρ‡Ρ‚ΠΎ U $ являСтся строковой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΈ установит Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ h для строки, которая Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° U $.

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ Π² ΠΎΠΊΠ½ΠΎ ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΊΠ½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, Π»ΠΈΠ±ΠΎ с ΠΏΠΎΠ»Π΅ΠΌ рСдактирования, Π»ΠΈΠ±ΠΎ с Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΡΡ списком Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ². Π‘ΠΌ. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² ΠΎΠΊΠ½Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹.

.

ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… - Stylus

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°Π·Π½Π°Ρ‡Π°Ρ‚ΡŒ выраТСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² нашСй Ρ‚Π°Π±Π»ΠΈΡ†Π΅ стилСй:

  font-size = 14 пиксСлСй

 Ρ‚Π΅Π»ΠΎ
   Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π° Arial, sans-serif
  

ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π²:

 ΠΊΡƒΠ·ΠΎΠ²  {
   ΡˆΡ€ΠΈΡ„Ρ‚: 14px Arial, Π±Π΅Π· засСчСк;
 }
  

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π΄Π°ΠΆΠ΅ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· списка Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ:

  font-size = 14 пиксСлСй
font = font-size "Lucida Grande", Arial

Ρ‚Π΅Π»ΠΎ
  ΡˆΡ€ΠΈΡ„Ρ‚ font, sans-serif
  

ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π²:

 ΠΊΡƒΠ·ΠΎΠ²  {
  ΡˆΡ€ΠΈΡ„Ρ‚: 14px "Lucida Grande", Arial, Π±Π΅Π· засСчСк;
}
  

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ (ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Ρ‚. Π”.) ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ символ $ . НапримСр:

  $ font-size = 14 пиксСлСй
body {
  ΡˆΡ€ΠΈΡ„Ρ‚: $ font-size Π±Π΅Π· засСчСк;
}
  

Поиск нСдвиТимости

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° интСрСсная ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Stylus - это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π°
свойства ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ ΠΊΠ°ΠΊ Π±Π΅Π· присвоСния ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ. ΠŸΡ€Π΅ΠΊΡ€Π°ΡΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ этого являСтся Π»ΠΎΠ³ΠΈΠΊΠ°, нСобходимая для Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ цСнтрирования элСмСнта (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ выполняСтся с использованиСм ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ»Π΅ΠΉ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅):

  #logo
   позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ
   Π²Π΅Ρ€Ρ…: 50%
   ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ: 50%
   ΡˆΠΈΡ€ΠΈΠ½Π°: w = 150 пиксСлСй
   высота: h = 80 пиксСлСй
   ΠΌΠ°Ρ€ΠΆΠ° слСва: - (w / 2)
   margin-top: - (h / 2)
  

ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Π·Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ w ΠΈ h , ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ просто Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ @
символ ΠΈΠΌΠ΅Π½ΠΈ свойства для доступа ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ:

  #logo
   позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ
   Π²Π΅Ρ€Ρ…: 50%
   ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ: 50%
   ΡˆΠΈΡ€ΠΈΠ½Π°: 150 пиксСлСй
   высота: 80 пиксСлСй
   ΠΌΠ°Ρ€ΠΆΠ° слСва: - (@ ΡˆΠΈΡ€ΠΈΠ½Π° / 2)
   ΠΌΠ°Ρ€ΠΆΠ°-Π²Π΅Ρ€Ρ…: - (@ высота / 2)
  

Π”Ρ€ΡƒΠ³ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ использования - это условноС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ свойств Π² миксинах Π½Π° основС сущСствования Π΄Ρ€ΡƒΠ³ΠΈΡ….Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ примСняСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ z-index , Ρ€Π°Π²Π½ΠΎΠ΅ 1 , Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ , Ссли z-index Π½Π΅ Π±Ρ‹Π» ΡƒΠΊΠ°Π·Π°Π½ Ρ€Π°Π½Π΅Π΅:

  позиция ()
    позиция: Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹
    z-index: 1, Ссли @ z-index

  #logo
    z-индСкс: 20
    позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ

  # logo2
    позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ
  

Поиск свойств Π±ΡƒΠ΄Π΅Ρ‚ Β«ΠΏΡƒΠ·Ρ‹Ρ€ΠΈΡ‚ΡŒΡΡΒ» ΠΏΠΎ стСку Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΉΠ΄Π΅Π½, ΠΈΠ»ΠΈ Π²Π΅Ρ€Π½Π΅Ρ‚ null , Ссли свойство Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ @color прСобразуСтся Π² blue :

  ΠΊΡƒΠ·ΠΎΠ²
    красный Ρ†Π²Π΅Ρ‚
    ΡƒΠ»
      Π›ΠΈ
        Ρ†Π²Π΅Ρ‚ синий
        Π°
          Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: @color
  

.

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

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