"Денис Гаев. Ксерион: язык и технология программирования" - читать интересную книгу автора


Ќ ап¤г б ®Ўлз­л¬Ё ЇҐаҐ¬Ґ­­л¬Ё, ў п§лЄҐ ЇаЁбгвбвўгов Є®­бв ­вл --
ЇҐаҐ¬Ґ­­лҐ, §­ зҐ­ЁҐ Є®в®але Ї®б«Ґ ®ЇЁб ­Ёп ­Ґ ¬®¦Ґв Ўлвм Ё§¬Ґ­Ґ­®. ЋЇЁб ­ЁҐ
Є®­бв ­вл ЇаҐ¤ў апҐвбп Є«озҐўл¬ б«®ў®¬ const. Џ®­пв­®, зв® Є®­бв ­в 
­ҐЇаҐ¬Ґ­­® ¤®«¦­  Ўлвм Ё­ЁжЁ «Ё§Ёа®ў ­ :

!! space -- бЁ¬ў®«м­ п Є®­бв ­в 
char const space = ‘ ‘;
!! factor -- Ї« ў ой п Є®­бв ­в 
float const factor = 2 * PI * PI;
!! median -- 楫 п Є®­бв ­в 
int const median = (low + high) // 2

Ќ ап¤г б Є®­бв ­в­®бвмо, ў ¦­л¬  ваЁЎг⮬ ЇҐаҐ¬Ґ­­®© пў«пҐвбп ०Ё¬
а §¬ҐйҐ­Ёп, гЄ §лў ойЁ© Є ЄЁ¬ Ё¬Ґ­­® ®Ўа §®¬ ЇҐаҐ¬Ґ­­ п Ўг¤Ґв ᮧ¤ ­ , Ё
бЄ®«мЄ® ўаҐ¬Ґ­Ё ®­  Їа®бгйҐбвўгҐв. Џ® 㬮«з ­Ёо, ०Ё¬ а §¬ҐйҐ­Ёп ®ЇаҐ¤Ґ«пҐв
Є®­вҐЄбв ®ЇЁб ­Ёп: ў § ўЁбЁ¬®бвЁ ®в в®Ј® ¬Ґбв , Ј¤Ґ ўбваҐвЁ«®бм ®ЇЁб ­ЁҐ,
ЇҐаҐ¬Ґ­­ п ¬®¦Ґв Ўлвм ®Ўкпў«Ґ­  Ј«®Ў «м­®©, «®Є «м­®© (ў дг­ЄжЁЁ) Ё«Ё
Є®¬Ї®­Ґ­в­®© (ў Є« ббҐ). Ћ¤­ Є®, «оЎ п ЇҐаҐ¬Ґ­­ п Ё«Ё Є®­бв ­в  ¬®¦Ґв Ўлвм
пў­® ®ЇЁб ­  Є Є бв вЁзҐбЄ п (static), в.Ґ. Ё¬Ґой п ўаҐ¬п ¦Ё§­Ё, б®ўЇ ¤ о饥
б® ўаҐ¬Ґ­Ґ¬ ўлЇ®«­Ґ­Ёп Їа®Ја ¬¬л:

u_int i, j, static counter = 0

‡ ¬ҐвмвҐ, зв® Є«о祢®Ґ б«®ў® static --  ваЁЎгв ®ЇЁблў Ґ¬®© ЇҐаҐ¬Ґ­­®©
(ў ¤ ­­®¬ б«гз Ґ, counter),   ­Ґ ®ЇЁб ­Ёп ў 楫®¬, Є Є ЇаЁ­пв® ў C.

„«п ЇаЁ¬ЁвЁў­ле вЁЇ®ў ¤ ­­ле ®ЇаҐ¤Ґ«Ґ­® ¬­®¦Ґбвў® ®ЇҐа жЁ©. Џ®¤а®Ў­®
а бб¬ ваЁў вм бЁб⥬㠮ЇҐа жЁ© ¬л ­Ґ Ўг¤Ґ¬, в Є Є Є ®­  ў® ¬­®Ј®¬
Ї®§ Ё¬бвў®ў ­  Ё§ C. Ћв¬ҐвЁ¬ «Ёим ­ ЁЎ®«ҐҐ бгйҐб⢥­­лҐ а §«ЁзЁп. ’ Є, ў
®в«ЁзЁҐ ®в C, ў ЉбҐаЁ®­Ґ а §«Ёз овбп ®ЇҐа жЁЁ Ї« ў о饣® ('/') Ё
楫®зЁб«Ґ­­®Ј® ('//') ¤Ґ«Ґ­Ёп (  ў§пвЁҐ ®бв вЄ  ®в ¤Ґ«Ґ­Ёп ўлЇ®«­пҐвбп
®ЇҐа жЁҐ© '-/'). Ќ ап¤г б ЇаЁўлз­л¬Ё ¤«п C-Їа®Ја ¬¬Ёбв  ®ЇҐа жЁп¬Ё ЎЁв®ўле
б¤ўЁЈ®ў ўЇа ў® Ё ў«Ґў® ('' Ё ''), бгйҐбвўгов в Є¦Ґ ЎЁ­ а­лҐ
®ЇҐа жЁЁ ЎЁв®ў®Ј® ўа йҐ­Ёп ('.' Ё '.'), Ё г­ а­ п ®ЇҐа жЁп
ва ­бЇ®§ЁжЁЁ ('.'). (Џ®б«Ґ¤­оо ®ЇҐа жЁо ¬®¦­® ®ЇЁб вм Є Є
"ЇҐаҐбв ­®ўЄг Ї®«®ўЁ­®Є": ¤«п §­ зҐ­Ёп вЁЇ  u_tiny ®­  ¬Ґ­пҐв ¬Ґбв ¬Ё
бв аиЁҐ Ё ¬« ¤иЁҐ 4 ЎЁв , ¤«п u_short - бв аиЁҐ Ё ¬« ¤иЁҐ 8 ЎЁв®ў Ё в.¤.)
ђ §г¬ҐҐвбп, ЇаҐ¤гᬮваҐ­л ЇаЁўлз­лҐ ¤«п C-Їа®Ја ¬¬Ёбв  ®ЇҐа жЁЁ Ё­ЄаҐ¬Ґ­в 
('++') Ё ¤ҐЄаҐ¬Ґ­в  ('-- ') ў ЇаҐдЁЄб­®© Ё Ї®бвдЁЄб­®© д®а¬Ґ.

‚ᥠ®ЇҐа жЁЁ ба ў­Ґ­Ёп ў®§ўа й ов §­ зҐ­ЁҐ вЁЇ  bool. „«п ўбҐе вЁЇ®ў
®ЇаҐ¤Ґ«Ґ­л ®ЇҐа жЁЁ ба ў­Ґ­Ёп ­  а ўҐ­бвў® ('--') Ё ­Ґа ўҐ­бвў®
(''),   ¤«п ¬­®ЈЁе вЁЇ®ў ¤ ­­ле ®ЇаҐ¤Ґ«Ґ­л в Є¦Ґ ба ў­Ґ­Ёп ­ 
гЇ®а冷祭­®бвм ('', '=', '', '='). ‚ з бв­®бвЁ, ўбҐ
ЇаЁ¬ЁвЁў­лҐ вЁЇл пў«повбп гЇ®а冷祭­л¬Ё. („«п зЁб«®ўле вЁЇ®ў нв®
б ¬®®зҐўЁ¤­®, бЁ¬ў®«м­лҐ вЁЇл гЇ®ап¤®зҐ­л ў ᮮ⢥вбвўЁЁ б ў­гв७­Ґ©
Є®¤Ёа®ўЄ®©,   ¤«п «®ЈЁзҐбЄЁе §­ зҐ­Ё© ЇаЁ­пв® false true). Ља®¬Ґ в®Ј®,
¤«п ўбҐе ЇаЁ¬ЁвЁў­ле вЁЇ®ў ®ЇаҐ¤Ґ«Ґ­л ЎЁ­ а­лҐ ®ЇҐа жЁЁ "¬ ЄбЁ¬г¬" ('?')
Ё "¬Ё­Ё¬г¬" ('?'), ў®§ўа й ойЁҐ, ᮮ⢥вб⢥­­®, Ў®«миЁ© Ё ¬Ґ­миЁ© Ё§