ΠžΡΠ½ΠΎΠ²Ρ‹ программирования Π½Π° си: Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π‘ΠΈ. ПосланиС ΠΈΠ· ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ столСтия / Π₯Π°Π±Ρ€

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

ΠžΡΠ½ΠΎΠ²Ρ‹ Π‘ΠΈ





















ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Π‘ΠΈ. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ арифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² Π‘ΠΈ



Π’Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° экран Π² Π‘ΠΈ. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ printf



Π’Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹Β  Π² Π‘ΠΈ. Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ scanf.



Условия Π² Π‘ΠΈ. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ if Π² c



ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² Π‘ΠΈ



ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€Β  Π² БИ ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ switch



Π¦ΠΈΠΊΠ» с условиСм Π² Π‘ΠΈ. Π¦ΠΈΠΊΠ» While



ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Π‘ΠΈ. Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅Β  ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅



Π¦ΠΈΠΊΠ»Ρ‹ Π² Π‘ΠΈ. Π¦ΠΈΠΊΠ»Β  c Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ количСством ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ for



ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° Π‘ΠΈ. Hello World



Π“Ρ€Π°Ρ„ΠΈΠΊΠ° Π² Π‘ΠΈ. Π’Ρ…ΠΎΠ΄ Π² графичСский Ρ€Π΅ΠΆΠΈΠΌ. РисованиС ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… Ρ„ΠΈΠ³ΡƒΡ€ : Π»ΠΈΠ½ΠΈΠΉ, Ρ‚ΠΎΡ‡Π΅ΠΊ, окруТностСй, ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ². Π—Π°Π΄Π°Π½ΠΈΠ΅ Ρ†Π²Π΅Ρ‚Π°



Π‘Π»ΡƒΡ‡Π°ΠΉΠ½Ρ‹Π΅ числа Π² Π‘ΠΈ



ΠœΠ°ΡΡΠΈΠ²Ρ‹ Π² Π‘ΠΈ. Π Π°Π±ΠΎΡ‚Π° с массивами. Π’Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ массива. Поиск максимального ΠΈ минимального элСмСнта массива



ΠœΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π² Π‘ΠΈ. Π’Π²ΠΎΠ΄Β ΠΈ Π²Ρ‹Π²ΠΎΠ΄ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. Π Π°Π±ΠΎΡ‚Π° с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ



Установка  Β Π‘ΠΈΒ  Π‘. Пошаговая инструкция установки   послСднСй вСрсии  срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° с (си) Β dev. Настройка Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ Π²Β  C (си)



Π’Π²ΠΎΠ΄Β ΠΈ Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² си++ cpp. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ cout ΠΈ cin Π² си++



Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π² си. Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· тСкстового Ρ„Π°ΠΉΠ»Π° Π² си. Π—Π°ΠΏΠΈΡΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² тСкстовый Ρ„Π°ΠΉΠ» Π² си



ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ошибки Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… си. Как Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ошибки Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… c



Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ языку программирования си. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ языка программирования си  с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ


Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² языки программирования C ΠΈ Π‘++ | Π£Ρ€ΠΎΠΊΠΈ Π‘++

  Обновл. 26 Июн 2020  | 

ΠŸΠ΅Ρ€Π΅Π΄ C++ Π±Ρ‹Π» C. C (произносится ΠΊΠ°ΠΊ Β«Π‘ΠΈΒ») Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π² 1972 Π³ΠΎΠ΄Ρƒ ДСннисом Π ΠΈΡ‚Ρ‡ΠΈ Π² Bell Telephone Laboratories ΠΊΠ°ΠΊ систСмный язык программирования, Ρ‚.Π΅. язык для написания ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм. Основной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ Π ΠΈΡ‚Ρ‡ΠΈ Π±Ρ‹Π»ΠΎ созданиС Π»Π΅Π³ΠΊΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ минималистичСского языка, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставлял Π±Ρ‹ эффСктивный доступ ΠΊ памяти, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ быстро выполнялся, ΠΈ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΠΈΡΠ°Ρ‚ΡŒ эффСктивный ΠΊΠΎΠ΄. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ высокоуровнСвого языка, Π±Ρ‹Π» создан язык Π‘ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ относился ΠΊ языкам Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня, ΠΎΡΡ‚Π°Π²Π°ΡΡΡŒ ΠΏΡ€ΠΈ этом нСзависимым ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠ³ Π±Ρ‹Ρ‚ΡŒ написан ΠΊΠΎΠ΄.

CΠΈ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅ стал Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ эффСктивным ΠΈ Π³ΠΈΠ±ΠΊΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π² 1973 Π³ΠΎΠ΄Ρƒ Π ΠΈΡ‚Ρ‡ΠΈ ΠΈ КСн Вомпсон пСрСписали большС ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы UNIX, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ этот язык. МногиС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Π±Ρ‹Π»ΠΈ написаны Π½Π° языкС ассСмблСра. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ АссСмблСра, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΈΡˆΡƒΡ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ процСссоры, высокая ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ языка CΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ UNIX ΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ², ускоряя Π΅Π³ΠΎ ΠΏΠΎΠΏΡƒΠ»ΡΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ. Π―Π·Ρ‹ΠΊ CΠΈ ΠΈ опСрационная систСма UNIX тСсно связаны ΠΌΠ΅ΠΆΠ΄Ρƒ собой, ΠΈ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ отчасти связана с успСхом Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ.

Π’ 1978 Π³ΠΎΠ΄Ρƒ Π‘Ρ€Π°ΠΉΠ°Π½ ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½ ΠΈ ДСннис Π ΠΈΡ‚Ρ‡ΠΈ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ ΠΊΠ½ΠΈΠ³Ρƒ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«Π―Π·Ρ‹ΠΊ программирования CΠΈΒ». Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π°, Π±ΠΎΠ»Π΅Π΅ извСстна ΠΊΠ°ΠΊ Β«K&RΒ» (ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΉ Π°Π²Ρ‚ΠΎΡ€ΠΎΠ²), стала стандартом ΠΈ своСобразной инструкциСй ΠΊ Π‘ΠΈ. Когда Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»Π°ΡΡŒ максимальная ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, Ρ‚ΠΎ программисты ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»ΠΈΡΡŒ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ Π² K&R, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ компиляторов Π² Ρ‚ΠΎ врСмя Π±Ρ‹Π»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² соотвСтствии со стандартами, ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π² этой ΠΊΠ½ΠΈΠ³Π΅.

Π’ 1983 Π³ΠΎΠ΄Ρƒ АмСриканский Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ институт стандартов (ΠΈΠ»ΠΈ Π΅Ρ‰Ρ‘ Β«ANSIΒ» ΠΎΡ‚ Π°Π½Π³Π». Β«American National Standards InstituteΒ») сформировал ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ для утвСрТдСния ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ стандарта языка CΠΈ. Π’ 1989 Π³ΠΎΠ΄Ρƒ ΠΎΠ½ΠΈ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈ ΠΈ выпустили стандарт C89, Π±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ извСстный, ΠΊΠ°ΠΊ ANSI C. Π’ 1990 Π³ΠΎΠ΄Ρƒ ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Π°Ρ организация ΠΏΠΎ стандартизации (ΠΈΠ»ΠΈ Π΅Ρ‰Ρ‘ Β«ISOΒ» ΠΎΡ‚ Π°Π½Π³Π». Β«International Organization for StandardizationΒ») приняла ANSI C (с нСбольшими измСнСниями). Π­Ρ‚Π° вСрсия языка CΠΈ стала извСстна ΠΊΠ°ΠΊ C90. Π’ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ счётС, компиляторы Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ ΠΏΠΎΠ΄ трСбования ANSI C/C90 ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»Π°ΡΡŒ максимальная ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, писались Π² соотвСтствиС с этими стандартами.

Π’ 1999 Π³ΠΎΠ΄Ρƒ ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ ANSI выпустил Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ языка CΠΈ, которая ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅ C99. Она приняла ΠΌΠ½ΠΎΠ³ΠΎ особСнностСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² компиляторах (Π² Π²ΠΈΠ΄Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ) ΠΈΠ»ΠΈ ΡƒΠΆΠ΅ Π² языкС C++.

C++

Π―Π·Ρ‹ΠΊ C++ (произносится ΠΊΠ°ΠΊ Β«Π‘ΠΈ плюс плюс») Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π‘ΡŒΡ‘Ρ€Π½ΠΎΠΌ Бтрауструпом Π² Bell Labs Π² качСствС дополнСния ΠΊ CΠΈ Π² 1979 Π³. Он Π΄ΠΎΠ±Π°Π²ΠΈΠ» мноТСство Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΠΈΡ‡ Π² язык Π‘ΠΈ. Π•Π³ΠΎ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π±Ρ‹Π»Π° Π²Ρ‹Π·Π²Π°Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒΡŽ языка. Об ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ (ООП) ΠΈ Π΅Π³ΠΎ отличиях ΠΎΡ‚ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² программирования ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ нСсколько ΠΏΠΎΠ·ΠΆΠ΅.

Π―Π·Ρ‹ΠΊ C++ Π±Ρ‹Π» Ρ€Π°Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½ (ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½) ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ΠΎΠΌ ISO Π² 1998 Π³ΠΎΠ΄Ρƒ ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ снова Π² 2003 Π³ΠΎΠ΄Ρƒ (ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ C++03). ΠŸΠΎΡ‚ΠΎΠΌ Π±Ρ‹Π»ΠΈ Π΅Ρ‰Ρ‘ Ρ‚Ρ€ΠΈ обновлСния (C++11, C++14 ΠΈ C++17, Ρ€Π°Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² 2011, 2014 ΠΈ 2017 Π³ΠΎΠ΄Π°Ρ…, соотвСтствСнно), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ большС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй.

Ѐилософия Π‘ ΠΈ Π‘++

Бмысл философии языков Π‘ ΠΈ C++ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Β«Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ программисту». НапримСр, компилятор Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π°ΠΌ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ смысл, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ Π²Π°ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ сбою. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· Π³Π»Π°Π²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΊ Π²Π°ΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΈ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ, создавая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языках Π‘/Π‘++.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π’Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ знания языка Π‘ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΡƒΡ€ΠΎΠΊΠΈ. Π’ процСссС изучСния этих ΡƒΡ€ΠΎΠΊΠΎΠ² Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Π±Π°Π·Ρƒ/Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚ Π·Π½Π°Π½ΠΈΠΉ.

ΠžΡ†Π΅Π½ΠΈΡ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒΡŽ:

Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ°…

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Π² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтях:

C | Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π―Π·Ρ‹ΠΊ программирования C

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

Π―Π·Ρ‹ΠΊ программирования Π‘ (си) являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых популярных ΠΈ распространСнных языков. Он прСдставляСт ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык программирования
ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния со статичСской Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π² 1969β€”1973 Π³ΠΎΠ΄Π°Ρ… Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Bell Labs программистом ДСннисом Π ΠΈΡ‚Ρ‡ΠΈ (Dennis Ritchie).

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

ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ язык Π‘ прСдназначался для написания ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Unix. ВпослСдствии Π‘ΠΈ стал ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· популярных языков, Π° Π΅Π³ΠΎ основной
сфСрой примСнСния стало систСмноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π² частности, созданиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ², Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚, антивирусов ΠΈ Ρ‚.Π΄.
К слову ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Linux большСй Ρ‡Π°ΡΡ‚ΡŒΡŽ написан Π½Π° Π‘ΠΈ. Однако Ρ‚ΠΎΠ»ΡŒΠΊΠΎ систСмным ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ языка Π½Π΅ ограничиваСтся. Π”Π°Π½Π½Ρ‹ΠΉ язык ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… любого уровня, Π³Π΄Π΅ Π²Π°ΠΆΠ½Ρ‹ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ
ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Π’Π°ΠΊ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π‘ΠΈ ΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Π΅ прилоТСния, ΠΈ Π΄Π°ΠΆΠ΅ Π²Π΅Π±-сайты (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡŽ CGI — Common Gateway Interface). Но,
ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, для создания графичСского интСрфСйса ΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ подходящиС инструмСнты ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π½ΠΎ Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΊΡ€ΡƒΠ³
использования Π‘ΠΈ довольно ΡˆΠΈΡ€ΠΎΠΊ. Π­Ρ‚ΠΎ Π² Π½Π΅ΠΌΠ°Π»ΠΎΠΉ стСпСни ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΎ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ языка. НапримСр, Π² извСстном Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³Π΅ языков программирования TIOBE язык Π‘
Π΄ΠΎΠ»Π³ΠΎΠ΅ врСмя ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎ ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ мСсто.

НСсмотря Π½Π° большиС возмоТности язык Π‘ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ довольно прост. Он Π½Π΅ содСрТит ΠΌΠ½ΠΎΠ³ΠΎ конструкций, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π΅Π³ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΎΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ Π΅Π³ΠΎ Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ Π² качСствС
языка для изучСния Π² Ρ†Π΅Π»ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ.

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

Π Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Π‘ΠΈ ΠΎΠΊΠ°Π·Π°Π»ΠΎ большоС влияниС Π² Ρ†Π΅Π»ΠΎΠΌ Π½Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ языков программирования. Π’ частности, Π΅Π³ΠΎ синтаксис стал основой для Ρ‚Π°ΠΊΠΈΡ… языков ΠΊΠ°ΠΊ
Π‘++, Π‘#, Java, PHP, JavaScript. Особо слСдуСт ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ связь с C++. C++ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΡ‘Π» ΠΎΡ‚ Π‘ΠΈ. Но впослСдствии ΠΈΡ…
Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ происходило ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, ΠΈ Π΄Π°ΠΆΠ΅ появилась Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ C99 Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π² язык Π‘ΠΈ ряд ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‰ΠΈΡ… с C++ особСнностСй. Π’ ΠΈΡ‚ΠΎΠ³Π΅ Π² настоящСС врСмя
ΠΎΠ±Π° языка ΡΠ²Π»ΡΡŽΡ‚ΡΡ фактичСски самодостаточными ΠΈ Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‚ΡΡ нСзависимо.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ особСнности Π‘ΠΈ

  • Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ — ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ скомпилирован Π½Π° ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ (ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ для Π½Π΅Π΅ компилятора)

  • Высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ выполнСния

  • ΠšΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ, нСбольшой Ρ€Π°Π·ΠΌΠ΅Ρ€ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… скомпилированных Ρ„Π°ΠΉΠ»ΠΎΠ²

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ этапы развития

Π’ 1978 Π³ΠΎΠ΄Ρƒ Π‘Ρ€Π°ΠΉΠ°Π½ ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½ ΠΈ ДСннис Π ΠΈΡ‚Ρ‡ΠΈ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ своСго Π·Π½Π°ΠΌΠ΅Π½ΠΈΡ‚ΠΎΠ³ΠΎ Ρ‚Ρ€ΡƒΠ΄Π° «Π―Π·Ρ‹ΠΊ программирования Π‘ΠΈ». Π”ΠΎΠ»Π³ΠΎΠ΅ врСмя эта ΠΊΠ½ΠΈΠ³Π°
слуТила Π½Π΅Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ спСцификациСй языка Π‘ΠΈ. Однако быстроС распространСниС Π‘ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ нСобходимости Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠ±Ρ‰ΠΈΡ… стандартов.
И Π² 1983 Π³ΠΎΠ΄Ρƒ организация ANSI (АмСриканский Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ институт стандартов) создала ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ спСцификации Π‘ΠΈ.
А Π² 1989 Π³ΠΎΠ΄Ρƒ спСцификация Π±Ρ‹Π»Π° ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½Π°. Π­Ρ‚Ρƒ Π²Π΅Ρ€ΡΠΈΡŽ языка принято Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ ANSI C ΠΈΠ»ΠΈ C89.
Π’ 1990 Π³ΠΎΠ΄Ρƒ спСцификация ANSI C Π±Ρ‹Π»Π° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½Π° ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ стандартизации (ISO). Новый стандарт стал Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ISO/IEC 9899:1990 ΠΈΠ»ΠΈ сокращСнно Π‘90.

Π’ ΠΊΠΎΠ½Ρ†Π΅ 1990-Ρ… Π³ΠΎΠ΄ΠΎΠ² стандарт подвСргся пСрСсмотру, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ Π²Ρ‹Ρ…ΠΎΠ΄Ρƒ Π½ΠΎΠ²ΠΎΠ³ΠΎ стандарта Π² 1999 Π³ΠΎΠ΄Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ принято Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ C99 (ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ISO 9899:1999).

И Π² Π΄Π΅ΠΊΠ°Π±Ρ€Π΅ 2011 Π±Ρ‹Π» ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΈ послСдний Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ стандарт для языка Π‘ΠΈ — Π‘11 (ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ISO/IEC 9899:2011).

ΠΊΠ°ΠΊ ΡΡ‚Π°Ρ€Ρ‚ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΊΡƒΠ΄Π° Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ? / Π₯Π°Π±Ρ€

Π‘Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, совсСм Π½Π΅ связанный с IT, проникаСтся ΠΈΠ½Ρ‚Ρ€ΠΈΠ³ΡƒΡŽΡ‰Π΅ΠΉ красотой этой сфСры ΠΈ ставит сСбС Π·Π°Π΄Π°Ρ‡Ρƒ постСпСнно ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с нуля. И Ρ‚ΡƒΡ‚ ΠΎΠ½ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ просто тСряСтся, Π½Π΅ понимая, с Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ, ΠΈ Π½ΡƒΠΆΠ΄Π°ΡΡΡŒ Π² Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π΅ ΠΈ систСмном ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅.

Π―, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ Π½Π΅Π΄Π°Π²Π½ΠΎ Π² Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ ситуации, Π³ΡƒΠ³Π»ΠΈΠ»Π°, искала ΠΌΠ°Π½ΡƒΠ°Π»ΠΎΠ² Π½Π° Π₯Π°Π±Ρ€Π΅ (ΠΊΠΎΠ΅-Ρ‡Ρ‚ΠΎ нашла: Π”Π΅ΡΡΡ‚ΡŒ совСтов Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ программистам, ΠΠ°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅ΠΌΡƒ программисту ΠΏΡ€ΠΎ стартапы ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎβ€¦), Π½ΠΎ Π² ΠΈΡ‚ΠΎΠ³Π΅ всё ΠΆΠ΅ Π±Ρ‹Π»Π° Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Π° ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ Π·Π° совСтом ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌΡƒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ составил для мСня Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠ»Π°Π½. Π‘ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этого Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½ Π½Π° Π₯Π°Π±Ρ€Π΅ – Π²Π΄Ρ€ΡƒΠ³ ΠΎΠ½ пригодится ΠΈ ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ Π΅Ρ‰Ρ‘. (Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅, Ρ‡Ρ‚ΠΎ пСрСчислСнныС ΠΊΠ½ΠΈΠ³ΠΈ относятся ΠΊ Β«Π·ΠΎΠ»ΠΎΡ‚ΠΎΠΌΡƒ Ρ„ΠΎΠ½Π΄ΡƒΒ» Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ Π² Π΄Π°Π½Π½ΠΎΠΉ сфСрС ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Ρ‹ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ.)

UPD: Новичкам ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ β€” Ρ‚Π°ΠΌ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ коррСктируСтся этот ΠΏΠ»Π°Π½.

Π­Ρ‚Π°ΠΏ I. ΠžΡΠ½ΠΎΠ²Ρ‹

Нортон Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-аппаратная организация IBM PCΒ»

Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π°, нСсмотря Π½Π° свою Π΄Π°Π²Π½ΠΎΡΡ‚ΡŒ, относятся ΠΊ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΊΠ° ΠΎΡ‚Π½ΡŽΠ΄ΡŒ Π½Π΅ устарСли. Как Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽ – повСствованиС Π²ΠΏΠΎΠ»Π½Π΅ понятно ΠΈ для ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Ρ‡Π°ΠΉΠ½ΠΈΠΊΠ° Π² IT.

Π“ΡƒΠΊ «АппаратныС срСдства IBM PCΒ»

А эту ΠΊΠ½ΠΈΠ³Ρƒ стоит ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Β«ΠΏΠΎΠ²Π΅Ρ€Ρ…Β» – ΠΎΠ½Π° расскаТСт ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π° Π² Π΄Π°Π½Π½ΠΎΠΉ сфСрС обстоят сСйчас.

Π­Ρ‚Π°ΠΏ II. Hardware

Π¨Π°Π³ 1

ΠœΠΎΡ€Ρ, АлбСрт «АрхитСктура микропроцСссора 80286Β»

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Ρ‚ΡƒΡ‚ бСрётся Π·Π° основу ΠΈΠΌΠ΅Π½Π½ΠΎ микропроцСссор 80286 – станСт понятно ΠΏΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ² ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ этапа.

Π¨Π°Π³ 2

Π“ΡƒΠΊ «АппаратныС интСрфСйсы ПК»

Π“ΡƒΠΊ Β«Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ устройств хранСния»

Π­Ρ‚Π°ΠΏ III. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы

Π¨Π°Π³ 1

Π’Π°Π½Π΅Π½Π±Π°ΡƒΠΌ «АрхитСктура ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Β»

Π¨Π°Π³ 2

ΠšΠΎΠ»ΠΈΡΠ½ΠΈΡ‡Π΅Π½ΠΊΠΎ, АллСн Β«Linux: ΠΏΠΎΠ»Π½ΠΎΠ΅ руководство»

ΠžΡ‚ ΠΎΠ±Ρ‰Π΅ΠΉ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы – Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Linux.

НСмСт, Π‘Π½Π°ΠΉΠ΄Π΅Ρ€, Π₯Π΅ΠΉΠ½ «Руководство администратора LinuxΒ»

Π­Ρ‚Π°ΠΏ IV. БобствСнно ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π¨Π°Π³ 1

ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½, Π ΠΈΡ‡ΠΈ Β«Π―Π·Ρ‹ΠΊ программирования Π‘Β»

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ для освоСния Π²Ρ‹Π±Ρ€Π°Π½ ΠΈΠΌΠ΅Π½Π½ΠΎ язык Π‘ΠΈ? Как ΠΌΠ½Π΅ рассказали Π·Π½Π°ΡŽΡ‰ΠΈΠ΅ Ρ‚ΠΎΠ²Π°Ρ€ΠΈΡ‰ΠΈ, ΠΎΠ½ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ «программистского ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΡΒ», Ρ‡Π΅Π³ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ слоТно Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ, начиная ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅, скаТСм, с Паскаля. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, язык Π‘ΠΈ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² наши Π΄Π½ΠΈ ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊΠ°ΠΊ для ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ, Ρ‚Π°ΠΊ ΠΈ для систСмного программирования.

Π¨Π°Π³ 2

ΠšΠ½ΡƒΡ‚ Β«Π˜ΡΠΊΡƒΡΡΡ‚Π²ΠΎ программирования»:
Π’ΠΎΠΌ 1. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹
Π’ΠΎΠΌ 2. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹
Π’ΠΎΠΌ 3. Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΈ поиск

Π‘Π΅Π½Ρ‚Π»ΠΈ Β«Π–Π΅ΠΌΡ‡ΡƒΠΆΠΈΠ½Ρ‹ программирования»

Π—Π°Ρ‡Π΅ΠΌ ΠΎΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ эти Ρ‚Ρ€ΡƒΠ΄Ρ‹? Как ΡƒΠΆΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π»ΠΈ Π½Π° Π₯Π°Π±Ρ€Π΅ – Β«Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, Π½ΠΈΠ³Π΄Π΅ большС, Ρ‡Π΅ΠΌ Π² Π°ΠΉΡ‚ΠΈ, Π½Π΅ изобрСтаСтся Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство вСлосипСдов». Π”Π°Π½Π½Ρ‹Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ этого ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ – ΠΈ ΠΏΠΎΠΏΡƒΡ‚Π½ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠ²ΠΈΠ²Π°Ρ‚ΡŒ ΡƒΠΌΠ΅Π½ΠΈΠ΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π΅ просто ΠΊΠΎΠ΄, Π° Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΊΠΎΠ΄.

Ну Π° для Π·Π°Ρ‚Ρ€Π°Π²ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡Π΅ΡΡ‚ΡŒ нСбольшой Ρ†ΠΈΠΊΠ» Π»Π΅ΠΊΡ†ΠΈΠΉ Β«ΠšΡƒΠ»ΡŒΡ‚ΡƒΡ€Π° программирования» (Π°Π²Ρ‚ΠΎΡ€ – А. Π‘Π°Π±ΠΈΠΉ). Он ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ программистам ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΡ… Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² Π²Π°ΠΊΡƒΡƒΠΌΠ΅, Π° Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ взаимодСйствиС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ программистами, с Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ (Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠΏΠ°Ρ‚ΡŒΡΡ ΠΏΠΎΡ‚ΠΎΠΌ Π² своих собствСнных ΠΈΠ»ΠΈ Π² Ρ‡ΡƒΠΆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…).

Π—Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ вопрос Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°: сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π·Π°ΠΉΠΌΡ‘Ρ‚ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ всСго этого? По ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·Π°ΠΌ ΠΌΠΎΠ΅Π³ΠΎ совСтчика, Ρƒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π½Π° ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ программирования Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π΅Ρ‡Π΅Ρ€Π° ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅, Π½Π° ΠΏΡ€ΠΎΡ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ осмыслСниС Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Ρ‚Ρ€Ρ‘Ρ… этапов ΡƒΠΉΠ΄Ρ‘Ρ‚ ΠΏΠΎΠ»Π³ΠΎΠ΄Π°-Π³ΠΎΠ΄. На Ρ‡Π΅Ρ‚Π²Ρ‘Ρ€Ρ‚Ρ‹ΠΉ этап Ρ‚ΠΎΠΆΠ΅ даётся Π³ΠΎΠ΄ – Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°Ρ‚ΡŒΡΡ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ ΠΏΠΎ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ ΡΠΎΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Как получится Π½Π° самом Π΄Π΅Π»Π΅ – врСмя ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚.

Π‘ΡƒΠ΄Ρƒ ΠΊΡ€Π°ΠΉΠ½Π΅ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½Π° Π·Π° ваши совСты ΠΈ уточнСния.

C++ ΡƒΡ€ΠΎΠΊΠΈ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… — ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ с нуля для Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ²

Π‘++ — это ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ, высокоуровнСвый язык программирования. ΠœΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ сфСр примСнСния. ΠŸΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π°ΡŽΡ‰Π°ΡΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. На сСгодня – это ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½Π΅ΠΉΡˆΠΈΡ… ΠΈ ΠΈΠ·Π²Π΅ΡΡ‚Π½Π΅ΠΉΡˆΠΈΡ… языков.

ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ссылки:

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΏΡ€ΠΎ C++

Π‘++ Π±Π΅Ρ€Ρ‘Ρ‚ основу Π² языкС Π‘ΠΈ, Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΌ Π΅Ρ‰Ρ‘ Π² 1969-1973 Π³ΠΎΠ΄Π°Ρ…. Π—Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΎΡ‚Π²Π΅Ρ‡Π°Π»Π° компания Bell Labs Π²ΠΎ Π³Π»Π°Π²Π΅ с Π³Π»Π°Π²Π½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ ДСннис Π ΠΈΡ‚Ρ‡ΠΈ. Π§Π΅Ρ€Π΅Π· 10 Π»Π΅Ρ‚ программист ΠΈΠ· Π”Π°Π½ΠΈΠΈ Π‘ΡŒΡ‘Ρ€Π½ Бтрауструп, Π² своё врСмя являвшийся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ Π‘ΠΈ, выпускаСт Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ языка ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Π‘++. Π’Π½Π°Ρ‡Π°Π»Π΅ своСго ΠΏΡƒΡ‚ΠΈ C++ являлся всСго лишь Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ, Π½Π΅ΠΊΠΈΠΌ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊ Π‘ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ»ΠΎ язык, добавляя Π² Π½Π΅Π³ΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ООП. Π‘Π°ΠΌ Бтрауструп ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ рассматривал язык всСго лишь ΠΊΠ°ΠΊ Β«Π‘ΠΈ с классами».

Π”Π°Ρ‚Π° роТдСния C++ приходится Π½Π° 1983 Π³ΠΎΠ΄. Π₯ΠΎΡ‚ΡŒ ΠΎΠ½ ΠΈ Π½Π΅ являлся ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΌ языком, Π° лишь ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡ‚ Π‘ΠΈ, Π½ΠΎ всё ΠΆΠ΅ ΠΈΠΌΠ΅Π» ряд ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π·Π° счёт ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈ стал ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ языком программирования. Π‘ Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ C++ Π² ΠΌΠΈΡ€Π΅ появилось ряд, Π½Ρ‹Π½Π΅ общСраспространённых, понятий:

  • Π˜Π½ΠΈΡ†ΠΈΠ°Ρ†ΠΈΡ классов с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ;
  • ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ наслСдования Π² ООП;
  • Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ· памяти;
  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ;
  • БистСма ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.
А Ρ‡Ρ‚ΠΎ ΠΆΠ΅ язык Π‘ΠΈ?

Π―Π·Ρ‹ΠΊ Π‘ΠΈ ΠΏΠΎ сСй дСнь сохраняСт ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π΄Π°ΠΆΠ΅ нСсмотря Π½Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ C++ ΠΈ Π΄ΠΎΠΌΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ послСднСго языка Π² сфСрС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠŸΠΎΡ‡Π΅ΠΌΡƒ старый ΠΈ ΠΌΠ΅Π½Π΅Π΅ Ρ€Π°Π·Π²ΠΈΡ‚Ρ‹ΠΉ язык Π΄Π°ΠΆΠ΅ сСгодня популярСн? Всё просто – ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ язык — довольно Π·Π°Ρ‚Ρ€Π°Ρ‚Π½ΠΎΠ΅ ΠΈ Π΄ΠΎΠ»Π³ΠΎΠ΅ Π΄Π΅Π»ΠΎ. Π§Π°ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ просто ΠΏΠ»Ρ‹Π²ΡƒΡ‚ ΠΏΠΎ Ρ‚Π΅Ρ‡Π΅Π½ΠΈΡŽ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ свои ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π‘ΠΈ.

Π’ сСти ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ спСциалисты Π΄Π°ΡŽΡ‚ совСты, Ρ‡Ρ‚ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π‘-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… языков Π»ΡƒΡ‡ΡˆΠ΅ с Π‘ΠΈ. Они говорят, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΡΡƒΡ‚ΡŒ Π‘++. Π’ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ – это Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅. Если Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ с Π‘++, Π² арсСналС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° появятся знания ΠΎ Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Ρ… ΠΈ соврСмСнных возмоТностях языка. Если ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ появится Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π‘ΠΈ, это Π½Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ сил. Π”Π°ΠΆΠ΅ сам Ρ„Π°ΠΊΡ‚ нСобходимости ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° довольно старый Π‘ΠΈ ΡƒΠΆΠ΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ большиС сомнСния.

Но Ссли Π²Ρ‹ всС ΠΆΠ΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Π‘ΠΈ ΠΏΠ΅Ρ€Π΅Π΄ языком C++, Ρ‚ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ Π²Π°ΠΌ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с большим Π²ΠΈΠ΄Π΅ΠΎ ΡƒΡ€ΠΎΠΊΠΎΠΌ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ смоТСтС ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с этим языком:

Π‘ΠΎΠ»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎ язык Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½Π° этой страницС.

РаспространСниС C++

Π’ скорС послС Π²Ρ‹Ρ…ΠΎΠ΄Π° язык Π‘++ Π½Π°Ρ‡Π°Π» Π·Π°Π²ΠΎΡ‘Π²Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ сфСры программирования. ΠŸΠΎΡΡ‚Π΅ΠΏΠ΅Π½Π½ΠΎ Π² Π½Π΅Π³ΠΎ внСдряли всё Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ всё большС отдаляло Π΅Π³ΠΎ ΠΎΡ‚ Ρ€ΠΎΠ»ΠΈ дополнСния ΠΊ Π‘ΠΈ. Π“ΠΎΠ΄Π°ΠΌΠΈ ΠΏΠΎΠ·ΠΆΠ΅ Π΅Π³ΠΎ пСрСстали Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΡ€ΠΈΡˆΠ»ΠΎ врСмя ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Π‘ΠΈ, Ρ‚ΠΎΠ³Π΄Π°-Ρ‚ΠΎ язык ΠΈ Π½Π°Π·Π²Π°Π»ΠΈ Π‘++. Π‘ Ρ‚Π΅Ρ… ΠΏΠΎΡ€ ΠΏΡƒΡ‚ΡŒ языков Ρ€Π°Π·ΠΎΡˆΡ‘Π»ΡΡ, ΠΎΠ½ΠΈ стали нСзависимыми (насколько это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ).

БСгодня Π‘++ — это Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΌΠΎΡ‰Π½Ρ‹ΠΉ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Π² наслСдство ΠΎΡ‚ Π‘ΠΈ массу ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… возмоТностСй ΠΏΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ ΠΎΠ½ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ примСняСтся Π² систСмном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ.

НСсколько ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… сфСр использования:

  • Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм. Π² Ρ‚ΠΎΠΌ числС систСма Windows прСимущСствСнно базируСтся Π½Π° Π‘++;
  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ²;
  • НаписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ с нуля;
  • Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° антивирусных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ.

Π‘++ ΡƒΡˆΡ‘Π» Π΄Π°Π»Π΅ΠΊΠΎ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ систСмного программирования. Он ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² создании ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ всСх ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… стоит Π°ΠΊΡ†Π΅Π½Ρ‚ Π½Π° быстродСйствии ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΠΎΠ΄ высокими Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ°ΠΌΠΈ. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡ для формирования графичСских Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π’Π΅ΡΡŒΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… Π΄Π²ΠΈΠΆΠΊΠΎΠ², ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π°, ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π° Π‘++. Π—Π° послСдниС Π³ΠΎΠ΄Π° всё большС ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΄Π°Π½Π½Ρ‹ΠΉ язык. Π”Π°ΠΆΠ΅ Π² сфСрС Π²Π΅Π±Π° нашлось мСсто этому языку. ВсСвозмоТныС Π²Π΅Π±-прилоТСния Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π‘++, Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π² качСствС основы, ΠΌΠΎΠΆΠ΅Ρ‚ просто для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π½ΠΎ Ρ„Π°ΠΊΡ‚ остаётся Ρ„Π°ΠΊΡ‚ΠΎΠΌ. Если ΠΏΠΎΠ΄Ρ‹Ρ‚ΠΎΠΆΠΈΡ‚ΡŒ: слоТнСС Π½Π°ΠΉΡ‚ΠΈ сфСры, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π‘++ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ, Ρ‡Π΅ΠΌ Ρ‚Π°ΠΌ, Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ этот язык.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности C++

Π‘++ относится ΠΊ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ языкам, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ компилятор измСняСт ΠΊΠΎΠ΄ C++, прСобраТая Π΅Π³ΠΎ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прСдустановлСнных инструкций. ВсС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ особСнностями, ΠΈΠ·-Π·Π° Ρ‡Π΅Π³ΠΎ нСльзя Π²Π·ΡΡ‚ΡŒ ΠΈ пСрСнСсти ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с ΠΎΠ΄Π½ΠΎΠΉ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ. Π’ΠΎΡ‡Π½Π΅Π΅, пСрСнСсти ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ ΠΎΠ½Π° Ρ‚Π°ΠΌ Π½Π΅ запустится. ΠŸΡ€ΠΈ этом исходный ΠΊΠΎΠ΄ прилоТСния прСимущСствСнно пСрСносится. ЕдинствСнноС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ – использованиС спСцифичСских возмоТностСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ОБ.

Π£ Π‘++ Π΅ΡΡ‚ΡŒ компиляторы ΠΈ инструмСнты для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ извСстных ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ. Π­Ρ‚ΠΎ позволяСт ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ исходники ΠΏΠΎΠ΄ Π»ΡŽΠ±ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ.

Π‘++ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ написаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² стилС ООП, Ρ‡Π΅Π³ΠΎ Π½Π΅ ΡƒΠΌΠ΅Π΅Ρ‚ Π‘ΠΈ. Π’ этом случаС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ становится лишь Π½Π°Π±ΠΎΡ€ΠΎΠΌ классов, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ способны Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ элСмСнтами ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Как поэтапно развивался Π‘++?

Π¨Π°Π³ΠΈ развития Π‘++:

  • 1979-1980 – Π‘++ появился ΠΈ позиционировался, ΠΊΠ°ΠΊ язык Π‘ΠΈ с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ классами;
  • 1983 – язык Π½Π°Ρ‡Π°Π» Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ всС ΠΌΡ‹ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ Π‘++;
  • 1985 – Ρ€Π΅Π»ΠΈΠ· коммСрчСского Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Π‘++. Π’ этот ΠΆΠ΅ Π³ΠΎΠ΄ появилась пСрвая бумаТная ΠΊΠ½ΠΈΠ³Π° Β«Π―Π·Ρ‹ΠΊΠ° программирования C++Β», ΠΎΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π°Π»Π° описаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, возмоТностСй ΠΈ ΠΏΡ€Π°Π²ΠΈΠ» использования языка;
  • 1989 – Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π° вторая вСрсия языка с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΌΠΈ возмоТностями;
  • Π‘ 1990 Π΄ΠΎ 2011 – ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠ΅ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°. Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² 1998 Π³ΠΎΠ΄Ρƒ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ язык. Π’ΠΎΡ‚ стандарт впослСдствии Π½Π°Π·Π²Π°Π»ΠΈ ISO/IEC 14882:1998, сСгодня — Π‘++98. Π’ 2003 Π³ΠΎΠ΄Ρƒ появилась ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ стандарта C++03;
  • 2011 – ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ стандарта C++11, Π² Π½Ρ‘ΠΌ появилось Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠΉ. ОбновлСниС ΠΎΠ±ΠΎΠ³Π°Ρ‚ΠΈΠ»ΠΎ язык ΠΎΠ±ΠΈΠ»ΠΈΠ΅ΠΌ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… возмоТностСй;
  • 2014 – выпуск ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ°Π»ΠΎΠ³ΠΎ добавлСния ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ вСрсии стандарта. Π•Π³ΠΎ ΠΏΡ€ΠΎΠ·Π²Π°Π»ΠΈ C++14;
  • 2017 – послСдний ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ· языка.

Π‘Ρ€Π΅Π΄Ρ‹ программирования, компиляторы

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

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с C++ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΡƒΠ΄ΠΎΠ±Π½ΡƒΡŽ для вас срСду ΠΈΠ»ΠΈ ΠΆΠ΅ вовсС Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ½Π»Π°ΠΉΠ½ компилятором, Ρ‡Ρ‚ΠΎ прСдставлСн Π½Π° этой страницС Π½ΠΈΠΆΠ΅. Π‘Ρ€Π΅Π΄ΠΈ самых популярных срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅, ΠΊΠ°ΠΊ: Visual C++, Xcode (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Мак), GCC, Intel C++ Compiler, Embarcadero (Borland) C++ Builder.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ курсы

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ курсы ΠΏΠΎ языку C++. На нашСм сайтС всС курсы ΠΏΠΎ языку Π‘++ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎ этой ссылкС.

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ языка Π‘ΠΈ / Π₯Π°Π±Ρ€

БСйчас, Π½Π°Π²Π΅Ρ€Π½ΠΎ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΌΠΈΡ€Π΅ спСциалиста Π² IT-области, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹ Π½Π΅ ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎ языкС Π‘ΠΈ. Π­Ρ‚ΠΎΡ‚ язык ΠΏΡ€ΠΈΠΎΠ±Ρ€Ρ‘Π» ΠΎΠ³Ρ€ΠΎΠΌΠ½ΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π²ΠΎ всём ΠΌΠΈΡ€Π΅ ΠΈ ΠΎΠΊΠ°Π·Π°Π» Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ влияниС Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ языки программирования. ИмСнно ΠΎΠ½ являСтся ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊΠΎΠΌ Ρ‚Π°ΠΊΠΈΡ… языков, ΠΊΠ°ΠΊ C++, C#, Java; ΠΌΠ΅Π½Π΅Π΅ извСстных (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ J#). Компания Microsoft для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ€ΠΎΠ΄Π½ΠΎΠ³ΠΎ языка ΠΊ своСй ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ .Net Π²Ρ‹Π±Ρ€Π°Π»Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Π‘ΠΈ-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ синтаксис. Π§Ρ‚ΠΎ Π½ΠΈ Π³ΠΎΠ²ΠΎΡ€ΠΈ, Π½ΠΎ язык Π‘ΠΈ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» Тизнь программистов ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ Π²Π΅ΠΊΠ° ΠΈ стал Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ Π² области Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠ³ΠΎ программирования, оставив ассСмблСру Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ мСста, Π³Π΄Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠΌΠ΅Π»Π° критичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

МногиС помнят ΠΈΠΌΠ΅Π½Π° создатСлСй языка β€” КСна Вомпсона ΠΈ ДСниса Π ΠΈΡ‚Ρ‡ΠΈ, Π½ΠΎ я Ρ€Π΅ΡˆΠΈΠ» ΠΊΠΎΠΏΠ½ΡƒΡ‚ΡŒ Π³Π»ΡƒΠ±ΠΆΠ΅ ΠΈ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ создания ΠΈ развития языка. ВсСм ΠΊΠΎΠΌΡƒ интСрСсна эта Ρ‚Π΅ΠΌΠ° β€” Π΄ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ ΠΊΠ°Ρ‚.


Π―Π·Ρ‹ΠΊ Π‘ΠΈ восходит корнями ΠΊ языку ALGOL (Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ΡΡ ΠΊΠ°ΠΊ ALGorithmic Language), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» создан Π² 1958 Π³ΠΎΠ΄Ρƒ совмСстно с ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ΠΎΠΌ ЕвропСйских ΠΈ АмСриканских ΡƒΡ‡Ρ‘Π½Ρ‹Ρ… Π² сфСрС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… Π½Π°ΡƒΠΊ Π½Π° встрСчС Π² 1958 Π² ШвСйцарской Π²Ρ‹ΡΡˆΠ΅ΠΉ тСхничСской школС Π¦ΡŽΡ€ΠΈΡ…Π°. Π―Π·Ρ‹ΠΊ Π±Ρ‹Π» ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСдостатки языка FORTRAN ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΎΠΉ ΠΈΡ… ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ.

Π’Π΄ΠΎΡ…Π½ΠΎΠ²Π»Ρ‘Π½Π½Ρ‹Π΅ языком ALGOL-60, ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ лаборатория ΠšΠ΅ΠΌΠ±Ρ€ΠΈΠ΄ΠΆΡΠΊΠΎΠ³ΠΎ УнивСрситСта совмСстно с ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΌ ΠΎΡ‚Π΄Π΅Π»ΠΎΠΌ Лондонского унивСрситСта создали Π² 1963 Π³ΠΎΠ΄Ρƒ язык CPL (Combined Programming Language).

Π―Π·Ρ‹ΠΊ CPL посчитали слоТным, ΠΈ Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° это ΠœΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΌ Ричардсоном Π±Ρ‹Π» создан Π² 1966 Π³ΠΎΠ΄Ρƒ язык BCPL, основноС ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π»ΠΎΡΡŒ Π² написании компиляторов. БСйчас ΠΎΠ½ практичСски Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Π½ΠΎ Π² своё врСмя ΠΈΠ·-Π·Π° Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ портируСмости ΠΎΠ½ ΠΈΠ³Ρ€Π°Π» Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ.

BCPL послуТил ΠΏΡ€Π΅Π΄ΠΊΠΎΠΌ для языка Π‘ΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ Π² 1969 Π² ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΠΎΠΉ всСм AT&T Bell Telephone Laboratories, Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌΠΈ КСном Вомпсоном ΠΈ ДСнсом Π ΠΈΡ‚Ρ‡ΠΈ.

Π―Π·Ρ‹ΠΊ Π‘ΠΈ Π±Ρ‹Π» использован для написания самых Ρ€Π°Π½Π½ΠΈΡ… вСрсий UNIX, созданной ΠΊΠ°ΠΊ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Multics, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ всё Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ Bell Laboratories. ИмСнно этот язык послуТил нСпосрСдствСнным ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊΠΎΠΌ языка Π‘ΠΈ.

По ΠΏΠΎΠ²ΠΎΠ΄Ρƒ возникновСния языка Π‘ΠΈ ΠŸΠΈΡ‚Π΅Ρ€ Мойлан Π² своСй ΠΊΠ½ΠΈΠ³Π΅ Β«The case against CΒ» ΠΏΠΈΡˆΠ΅Ρ‚: «НуТСн Π±Ρ‹Π» язык, способный ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ТСсткиС ΠΏΡ€Π°Π²ΠΈΠ»Π°, встроСнныС Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ языков высокого уровня ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ ΠΈΡ… Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ. НуТСн Π±Ρ‹Π» Ρ‚Π°ΠΊΠΎΠΉ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ» Π±Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄ΠΎ Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ассСмблСрС ΠΈΠ»ΠΈ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ машинного ΠΊΠΎΠ΄Π°.Β» Π‘ΠΈ стал ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌ языком. Π­Ρ‚ΠΎ обусловило Π΅Π³ΠΎ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π² Ρ‚Π°ΠΊΠΈΡ… отраслях программирования, ΠΊΠ°ΠΊ написаниС Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ… аспСктах Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠ³ΠΎ программирования.

Π―Π·Ρ‹ΠΊ программирования Π‘ΠΈ Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π² стСнах Bell Labs Π² ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ с 1969 ΠΏΠΎ 1973 Π³ΠΎΠ΄Ρ‹. Как признался сам Π ΠΈΡ‚Ρ‡ΠΈ, самый Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ творчСства приходился Π½Π° 1972 Π³ΠΎΠ΄.

Π—Π° всё врСмя своСго сущСствования, язык Π‘ΠΈ оброс Π»Π΅Π³Π΅Π½Π΄Π°ΠΌΠΈ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ ΠΌΠΎΡ‚ΠΈΠ²ΠΎΠ² своСго создания.

Богласно ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π»Π΅Π³Π΅Π½Π΄, ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½ ΠΈ Π ΠΈΡ‚Ρ‡ΠΈ любили ΠΎΠ΄Π½Ρƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ½ΠΈ запускали Π½Π° Π³Π»Π°Π²Π½ΠΎΠΌ сСрвСрС ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ПозТС, ΠΎΠ½ΠΈ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΈ пСрСнСсти Π΅Ρ‘ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, стоящий Π² офисС. Но ΠΎΠ½, ΠΊ соТалСнию Π½Π΅ ΠΈΠΌΠ΅Π» ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, Ρ‡Ρ‚ΠΎ сподвигло ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½Π° ΠΈ Π ΠΈΡ‚Ρ‡ΠΈ Π΅Ρ‘ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ. Когда ΠΎΠ½ΠΈ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΈ пСрСнСсти систСму Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, это оказалось нСпростой Π·Π°Π΄Π°Ρ‡Π΅ΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ систСма Π±Ρ‹Π»Π° написана ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π° ассСмблСрС. Π’ΠΎΠ³Π΄Π° Ρƒ Π½ΠΈΡ… Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° идСя ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΅Ρ‘ Π½Π° язык высокого уровня. Π‘Π½Π°Ρ‡Π°Π»Π° для этих Ρ†Π΅Π»Π΅ΠΉ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ язык Π‘ΠΈ, Π½ΠΎ Π² связи с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ Π΄Π°Π²Π°Π» Π½Π° ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ возмоТности ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ΠΈ Ρ…ΠΎΡ‚Π΅Π»ΠΈ пСрСнСсти систСму, Π±Ρ‹Π»ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свой язык.

Богласно Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π»Π΅Π³Π΅Π½Π΄Π΅, язык Π‘ΠΈ Π±Ρ‹Π» ΠΏΠ΅Ρ€Π²ΠΎΠ°ΠΏΡ€Π΅Π»ΡŒΡΠΊΠΎΠΉ ΡˆΡƒΡ‚ΠΊΠΎΠΉ, которая ΠΎΠ±Ρ€Π΅Π»Π° Π½Π΅ΡˆΡƒΡ‚ΠΎΡ‡Π½ΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ.

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ языка Π‘ΠΈ унаслСдовал Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΡŽ, Π·Π°Π»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ Π΅Ρ‰Ρ‘ Никлаусом Π’ΠΈΡ€Ρ‚ΠΎΠΌ ΠΈ Π±Ρ‹Π» написан Π½Π° самом Π‘ΠΈ. Богласно мнСнию Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π°, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ языка Π‘ΠΈ являСтся Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ Π±ΡƒΠΊΠ²ΠΎΠΉ Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°. Оно появилось ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ язык Π‘ΠΈ являСтся Π±ΠΎΠ»Π΅Π΅ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ, Ρ‡Π΅ΠΌ язык Π‘ΠΈ. Однако, сам Π ΠΈΡ‚Ρ‡ΠΈ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ названия языка Π³ΠΎΠ²ΠΎΡ€ΠΈΠ» ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:Β«Π‘ΠΎΠ·Π΄Π°Π² систСму Ρ‚ΠΈΠΏΠΎΠ², ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ синтаксис ΠΈ компилятор для Π½ΠΎΠ²ΠΎΠ³ΠΎ языка, я почувствовал, Ρ‡Ρ‚ΠΎ ΠΎΠ½ заслуТиваСт Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ: NB показалось ΠΌΠ½Π΅ нСдостаточно Ρ‡Π΅Ρ‚ΠΊΠΈΠΌ. Π― Ρ€Π΅ΡˆΠΈΠ» ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ±ΡƒΠΊΠ²Π΅Π½Π½ΠΎΠΌΡƒ ΡΡ‚ΠΈΠ»ΡŽ ΠΈ Π½Π°Π·Π²Π°Π» Π΅Π³ΠΎ C (Π‘ΠΈ), оставляя ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ вопрос, являлось Π»ΠΈ послС B это ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π±ΡƒΠΊΠ²ΠΎΠΉ Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π΅ ΠΈΠ»ΠΈ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ BCPLΒ».

УспСх Π‘ΠΈ Π² основном связан с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π° Π½Ρ‘ΠΌ Π±Ρ‹Π»Π° написана Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы UNIX, которая Π² ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Π»Π° ΠΎΡ‡Π΅Π½ΡŒ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ. Если ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΏΠΎ количСству ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π½Π° Π±Π°Π·Π΅ UNIX, Ρ‚ΠΎ ΠΎΠ½Π° являСтся самой распространённой систСмой Π² ΠΌΠΈΡ€Π΅. Π’ связи с Π΅Ρ‘ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Ρ‘Π½Π½ΠΎΡΡ‚ΡŽ, Π° Ρ‚Π°ΠΊΠΆΠ΅ с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΠ±ΡŠΡ‘ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы измСряСтся Π² ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°Ρ… строк ΠΊΠΎΠ΄Π° (для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, Π² послСдних вСрсиях Linux содСрТится Π±ΠΎΠ»Π΅Π΅ 10 000 000 строк ΠΊΠΎΠ΄Π°), Π·Π°Π΄Π°Ρ‡Π° ΠΎ пСрСписывании UNIX Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ язык ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ практичСски Π½Π΅Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌΠΎΠΉ (Ρ‚Π°ΠΊΠΆΠ΅ слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Ρ€ΡƒΡ‡Π½ΠΎΠΌ пСрСписывании Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ ошибки, Ρ‡Ρ‚ΠΎ сущСствСнно снизит ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π° ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ с использованиСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств пострадаСт ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, язык Π‘ΠΈ, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΡ‘Π½Π½Ρ‹ΠΌ ΠΊ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° позволяСт Π²Ρ‹ΠΆΠ°Ρ‚ΡŒ ΠΈΠ· Π½Π΅Π³ΠΎ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ большС, Ρ‡Π΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ языки программирования. Π­Ρ‚ΠΎ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π±Π΅ΡΡΠΌΡ‹ΡΠ»Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° UNIX Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ язык. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ссли Π΄Ρ€ΡƒΠ³ΠΈΠ΅ языки программирования ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΡ‡Π΅Π·Π½ΡƒΡ‚ΡŒ с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, уступив Π΄ΠΎΡ€ΠΎΠ³Ρƒ Π½ΠΎΠ²Ρ‹ΠΌ тСхнологиям, Ρ‚ΠΎ язык Π‘ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΆΠΈΡ‚ΡŒ, ΠΏΠΎΠΊΠ° ΠΆΠΈΠ²Ρ‘Ρ‚ UNIX. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠΊΠ° ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ Π² Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΡ‹ ΠΈΡ… сСбС прСдставляСм.

ΠŸΠ΅Ρ€Π²Π°Ρ ΠΊΠ½ΠΈΠ³Π°, посвящённая языку Π‘ΠΈ Π±Ρ‹Π»Π° написана ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½ΠΎΠΌ ΠΈ Π ΠΈΡ‚Ρ‡ΠΈ Π² 1978 Π³ΠΎΠ΄Ρƒ ΠΈ Π²Ρ‹ΡˆΠ»Π° Π² свСт ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«Π―Π·Ρ‹ΠΊ программирования Π‘ΠΈΒ». Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π°, Π² срСдС программистов Π±ΠΎΠ»Π΅Π΅ извСстная ΠΊΠ°ΠΊ Β«K&RΒ», стала Π½Π΅ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ стандартом языка Π‘ΠΈ.

Π’ ΠΊΠΎΠ½Ρ†Π΅ 1970-Ρ… Π³ΠΎΠ΄ΠΎΠ², язык си Π½Π°Ρ‡Π°Π» Π²Ρ‹Ρ‚Π΅ΡΠ½ΡΡ‚ΡŒ BASIC, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² Ρ‚ΠΎ врСмя Π±Ρ‹Π» Π²Π΅Π΄ΡƒΡ‰ΠΈΠΌ Π² области программирования ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ². Π’ 1980-Ρ… Π³ΠΎΠ΄Π°Ρ… ΠΎΠ½ Π±Ρ‹Π» Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΠΎΠ΄ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ IBM-PC, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ скачку Π΅Π³ΠΎ популярности. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя Π‘ΡŒΡΡ€Π½ Бтрауструп Π½Π°Ρ‡Π°Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ языка программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹ сочСтал Π² сСбС синтаксис популярного языка Π‘ΠΈ ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования, которая ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»Π°ΡΡŒ всё Π±ΠΎΠ»Π΅Π΅ вострСбованной, Ρ‚Π°ΠΊ Π½Π°Ρ‡Π°Π»Π°ΡΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° языка Π‘++.

Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π‘ΠΈ Π½Π°Π±ΠΈΡ€Π°Π» всё Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ, компиляторы для Π½Π΅Π³ΠΎ Π²Ρ‹ΠΏΡƒΡΠΊΠ°Π»ΠΈΡΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ„ΠΈΡ€ΠΌΠ°ΠΌΠΈ, ΠΈ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π»Π°ΡΡŒ Π½Π° компиляторС ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΠΈΡ€ΠΌΠ΅, Π½Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π»Π°ΡΡŒ Π½Π° компиляторС Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Всё это Π±Ρ‹Π»ΠΎ связано с отсутствиСм Ρ‡Ρ‘Ρ‚ΠΊΠΎ ΠΎΠ³ΠΎΠ²ΠΎΡ€Π΅Π½Π½ΠΎΠ³ΠΎ стандарта языка Π‘ΠΈ. ВсС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ Π½Π° ΠΊΠ½ΠΈΠ³Ρƒ ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½Π° ΠΈ Π ΠΈΡ‚Ρ‡ΠΈ, Π½ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π΅Ρ‘ ΠΏΠΎ-своСму.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ стандарта языка Π‘ΠΈ занялся АмСриканский Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ институт стандартов (ANSI). ΠŸΡ€ΠΈ Π½Ρ‘ΠΌ Π² 1983 Π³ΠΎΠ΄Ρƒ Π±Ρ‹Π» сформирован ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ X3J11, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ занялся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ стандарта. ΠŸΠ΅Ρ€Π²Π°Ρ вСрсия стандарта Π±Ρ‹Π»Π° Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π° Π² 1989 Π³ΠΎΠ΄Ρƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π‘89. Π’ 1990, внСся нСбольшиС измСнСния Π² стандарт, Π΅Π³ΠΎ приняла ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Π°Ρ ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ISO. Π’ΠΎΠ³Π΄Π° ΠΎΠ½ стал извСстСн ΠΏΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΠΌ ISO/IEC 9899:1990, Π½ΠΎ Π² срСдС программистов Π·Π°ΠΊΡ€Π΅ΠΏΠΈΠ»ΠΎΡΡŒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅, связанноС с Π³ΠΎΠ΄ΠΎΠΌ принятия стандарта: Π‘90. ПослСднСй Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ вСрсиСй стандарта являСтся стандарт ISO/IEC 9899:1999, Ρ‚Π°ΠΊΠΆΠ΅ извСстный ΠΊΠ°ΠΊ Π‘99, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» принят Π² 2000 Π³ΠΎΠ΄Ρƒ.

Π‘Ρ€Π΅Π΄ΠΈ Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π² стандарта Π‘99 стоит ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Π°, ΠΊΠ°ΡΠ°ΡŽΡ‰Π΅Π³ΠΎΡΡ мСста объявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ посрСди ΠΊΠΎΠ΄Π°, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π½Π°Ρ‡Π°Π»Π΅ составного Π±Π»ΠΎΠΊΠ° ΠΈΠ»ΠΈ Π² глобальной области видимости. Π­Ρ‚ΠΎ ΡƒΠ²ΠΎΠ΄ΠΈΡ‚ Π‘ΠΈ ΠΎΡ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ объявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Π½Π°Ρ‡Π°Π»Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, которая присутствуСт Π² ПаскалС. МСня, ΠΊΠ°ΠΊ ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ… программистов, ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΡˆΠΈΡ… ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° Π‘++ (Π³Π΄Π΅ это ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ отсутствуСт) Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ компилятора Π²Ρ‹Π·Ρ‹Π²Π°Π»ΠΎ Π½Π΅Π΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΎ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π΄Π°ΠΆΠ΅ с принятиСм стандарта Π‘99, Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Borland Embarcadeo RAD Studio 2010, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Π½Π°Ρ‡Π°Π»Π΅ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π° всё Π΅Ρ‰Ρ‘ дСйствуСт. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ мСста, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… стандарты Π‘ΠΈ Π½Π΅ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° ΡΠΎΠ±Π»ΡŽΠ΄Π°ΡŽΡ‚ΡΡ. Π•ΡΡ‚ΡŒ ΠΌΠ½Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ это связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ основноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Microsoft ΠΈ Borland сосрСдоточСно Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Ρ… языках программирования. Однако, согласно завСрСниям ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Sun Microsystems, Π΅Ρ‘ срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Sun Studio ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π‘99.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ Π‘99 сСйчас Π² большСй ΠΈΠ»ΠΈ мСньшСй стСпСни поддСрТиваСтся всСми соврСмСнными компиляторами языка Π‘ΠΈ. Π’ ΠΈΠ΄Π΅Π°Π»Π΅, ΠΊΠΎΠ΄ написанный Π½Π° Π‘ΠΈ с соблюдСниСм стандартов ΠΈ Π±Π΅Π· использования Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ- ΠΈ систСмно-зависимых Π²Ρ‹Π·ΠΎΠ²ΠΎΠ², становился ΠΊΠ°ΠΊ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ- Ρ‚Π°ΠΊ ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎ-нСзависимым ΠΊΠΎΠ΄ΠΎΠΌ.

Π’ 2007 Π³ΠΎΠ΄Ρƒ Π½Π°Ρ‡Π°Π»ΠΈΡΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ стандартом языка Π‘ΠΈ: Π‘1x.

ΠžΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ курс Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° языкС C (Π‘ΠΈ)Β» β€” Π₯Π°Π±Ρ€ ΠšΠ°Ρ€ΡŒΠ΅Ρ€Π°

Programming with C

Π’ своС врСмя язык Π‘ (Π‘ΠΈ) стал ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ языком, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ примСняСтся Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ систСмного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π’ нашС врСмя ΠΎΠ½ остаётся языком, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π½Π° максимальном количСствС Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, ΠΈ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых популярных языков программирования, особСнно Π² ΠΌΠΈΡ€Π΅ свободного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. ΠšΡ€ΠΎΠΌΠ΅ этого, язык Π‘ (Π‘ΠΈ) являСтся основой для Ρ‚Π°ΠΊΠΈΡ… языков программирования, ΠΊΠ°ΠΊ C++, C#, Java ΠΈ Objective-C. ΠšΡƒΡ€Ρ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π΄Π²Π° стандарта языка Π‘, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Π‘89 ΠΈ Π‘11 появившийся Π² 2011 Π³ΠΎΠ΄Ρƒ.

ВсС это Π΄Π΅Π»Π°Π΅Ρ‚ язык Π‘ (Π‘ΠΈ) ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ для изучСния, Ссли Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΡ‚Π°Ρ‚ΡŒ профСссионалом Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ высокого уровня. И Ρ‚ΠΎΠ³Π΄Π° ΠΈΠΌΠ΅Π½Π½ΠΎ для вас курс Π£Ρ‡Π΅Π±Π½ΠΎΠ³ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π° «БпСциалист» Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° языкС C (Π‘ΠΈ)Β».

ΠšΡƒΡ€Ρ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ΡΠ»ΡƒΡˆΠ°Ρ‚Π΅Π»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΆΠ΅ освоили основы программирования ΠΈ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈ хотят Π² дальнСйшСм ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ созданиСм Π½Π°ΡƒΡ‡Π½Ρ‹Ρ…, офисных, Π° Ρ‚Π°ΠΊΠΆΠ΅ сСтСвых ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° курса составлСна с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ стандарта Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Β», ΡƒΡ‚Π². ΠΏΡ€ΠΈΠΊΠ°Π·ΠΎΠΌ ΠœΠΈΠ½ΠΈΡΡ‚Π΅Ρ€ΡΡ‚Π²Π° Ρ‚Ρ€ΡƒΠ΄Π° ΠΈ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π Π€ ΠΎΡ‚ 18 ноября 2013 Π³. β„– 679Π½.

На курсС Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° языкС C (Π‘ΠΈ)Β» Π’Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ основныС понятия: лСксСмы ΠΈ ΠΏΡ€ΠΎΠ±Π΅Π»ΡŒΠ½Ρ‹Π΅ символы, Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, структуру ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ языка C, прСпроцСссорныС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΌΠΈ функциями. ΠžΡΠ²ΠΎΠΈΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ с массивами, структурами Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ.

Π’ курсС обращаСтся особоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ тСорСтичСских Π·Π½Π°Π½ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΠΎ самому языку Π‘ΠΈ, Ρ‚Π°ΠΊ ΠΈ ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², Π²Ρ‹Π±ΠΎΡ€Π° ΠΈ проСктирования структур Π΄Π°Π½Π½Ρ‹Ρ…, создания ΠΈ тСстирования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ курса Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° языкС C (Π‘ΠΈ)Β» состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ всС тСорСтичСскиС Ρ‚Π΅ΠΌΡ‹, Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌΡ‹Π΅ Π½Π° занятиях, Π·Π°ΠΊΡ€Π΅ΠΏΠ»ΡΡŽΡ‚ΡΡ составлСниСм ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ‡Ρ‚ΠΎ позволяСт Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ всС возмоТности языка программирования Π‘ (БИ).

ΠšΡƒΡ€Ρ Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° языкС C (Π‘ΠΈ)Β» Π²Π΅Π΄ΡƒΡ‚ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΠΈ, профСссионалы своСго Π΄Π΅Π»Π°.

ВсС ΠΎΠ½ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΡΠΎΡ‡Π΅Ρ‚Π°ΡŽΡ‚ ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Π½ΠΈΠ΅ с практичСской Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ.

По ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ курса Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ Π¦Π΅Π½Ρ‚Ρ€Π° «БпСциалист», ΠΏΡ€ΠΈΠ·Π½Π°Π²Π°Π΅ΠΌΠΎΠ΅ работодатСлями.

Π—Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ΡΡŒ Π½Π° курсы Π² «БпСциалистС»! ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Π½Π°Π²Ρ‹ΠΊΠΈ для дальнСйшСго развития ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Ρ‹!

ΠšΡƒΡ€Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΎΡ‡Π½ΠΎ.

Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ основы языка программирования C всСго Π·Π° нСсколько часов

Π­Ρ‚ΠΎ руководство для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² Π½Π° языкС Π‘ΠΈ слСдуСт ΠΏΡ€Π°Π²ΠΈΠ»Ρƒ 80/20. Π’Ρ‹ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚Π΅ 80% языка программирования C Π·Π° 20% Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ даст Π²Π°ΠΌ всСсторонний ΠΎΠ±Π·ΠΎΡ€ языка.

Π­Ρ‚ΠΎ руководство Π½Π΅ пытаСтся ΠΎΡ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ всС, Ρ‡Ρ‚ΠΎ связано с C. Оно фокусируСтся Π½Π° ядрС языка, ΠΏΡ‹Ρ‚Π°ΡΡΡŒ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТныС Ρ‚Π΅ΠΌΡ‹.

И ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: здСсь Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π²Π΅Ρ€ΡΠΈΡŽ этого Руководства для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Π½Π° C Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ PDF ΠΈ ePub.

ΠΠ°ΡΠ»Π°ΠΆΠ΄Π°ΠΉΡ‚Π΅ΡΡŒ!

ОглавлСниС

  1. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² C
  2. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ Ρ‚ΠΈΠΏΡ‹
  3. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹
  4. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹
  5. УсловныС выраТСния
  6. Π¦ΠΈΠΊΠ»Ρ‹
  7. ΠœΠ°ΡΡΠΈΠ²Ρ‹
  8. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ
  9. Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ
  10. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ
  11. Π’Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄
  12. ОбъСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…
  13. БтатичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅
  14. Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅
  15. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ²
  16. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΠΌΡ‹Π΅ Ρ‚ΠΈΠΏΡ‹
  17. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹
  18. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки
  19. Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹
  20. ΠŸΡ€Π΅ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€
  21. Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² C

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

Π― помню, Ρ‡Ρ‚ΠΎ это Π±Ρ‹Π» ΠΌΠΎΠΉ Π²Ρ‚ΠΎΡ€ΠΎΠΉ язык программирования послС Паскаля.

C — это Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ студСнты ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ для изучСния программирования. Π­Ρ‚ΠΎ Π½Π΅ акадСмичСский язык. И я Π±Ρ‹ сказал, Ρ‡Ρ‚ΠΎ это Π½Π΅ самый простой язык, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ C — язык программирования довольно Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня.

БСгодня язык C ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²ΠΎ встраиваСмых устройствах ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-сСрвСров, построСнных с использованиСм Linux.Π―Π΄Ρ€ΠΎ Linux построСно с использованиСм C, ΠΈ это Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ C ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ядро ​​всСх устройств Android. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ C Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ части всСго ΠΌΠΈΡ€Π°. БСйчас. Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

Когда ΠΎΠ½ Π±Ρ‹Π» создан, C считался языком высокого уровня, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π±Ρ‹Π» пСрСносимым ΠΌΠ΅ΠΆΠ΄Ρƒ машинами. БСгодня ΠΌΡ‹ ΠΊΠ°ΠΊ Π±Ρ‹ считаСм само собой Ρ€Π°Π·ΡƒΠΌΠ΅ΡŽΡ‰ΠΈΠΌΡΡ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ Π½Π° Mac, Π² Windows ΠΈΠ»ΠΈ Linux, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Node.js ΠΈΠ»ΠΈ Python.

Когда-Ρ‚ΠΎ это Π±Ρ‹Π»ΠΎ совсСм Π½Π΅ Ρ‚Π°ΠΊ.C привнСс Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ простой Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ язык, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±Ρ‹Π» компилятор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π»Π΅Π³ΠΊΠΎ пСрСнСсти Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹.

Π― сказал компилятору: C — это ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык программирования, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Go, Java, Swift ΠΈΠ»ΠΈ Rust. Π”Ρ€ΡƒΠ³ΠΈΠ΅ популярныС языки программирования, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Python, Ruby ΠΈΠ»ΠΈ JavaScript, ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ. Π Π°Π·Π½ΠΈΡ†Π° Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Π°: скомпилированный язык Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ.

C Π½Π΅ сборщик мусора. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ сами ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ.Π­Ρ‚ΠΎ слоТная Π·Π°Π΄Π°Ρ‡Π°, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π°Ρ большого внимания для прСдотвращСния ошибок, Π½ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½Π° Π΄Π΅Π»Π°Π΅Ρ‚ C ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ для написания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для встраиваСмых устройств, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Arduino.

C Π½Π΅ скрываСт слоТности ΠΈ возмоТностСй ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΏΠΎΠ΄ Π½Π΅ΠΉ. Π£ вас Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ сил, Ссли Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Π½Π° Ρ‡Ρ‚ΠΎ Π²Ρ‹ способны.

БСйчас я Ρ…ΠΎΡ‡Ρƒ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° языкС C, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Π½Π°Π·ΠΎΠ²Π΅ΠΌ Β«

.ΠžΡΠ½ΠΎΠ²Ρ‹ программирования Π½Π° C

— qaru

ΠŸΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ стСка

  1. Около
  2. Π’ΠΎΠ²Π°Ρ€Ρ‹

  3. Для ΠΊΠΎΠΌΠ°Π½Π΄
  1. ΠŸΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ стСка
    ΠžΠ±Ρ‰Π΅ΡΡ‚Π²Π΅Π½Π½Ρ‹Π΅ вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹

  2. ΠŸΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ стСка для ΠΊΠΎΠΌΠ°Π½Π΄
    Π“Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈ дСлятся частными знаниями с ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ

  3. Ρ€Π°Π±ΠΎΡ‚Ρ‹
    ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ связанныС с Π½ΠΈΠΌ тСхничСскиС возмоТности ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Π½ΠΎΠ³ΠΎ роста

  4. Π’Π°Π»Π°Π½Ρ‚
    НанимайтС тСхничСских спСциалистов ΠΈ создавайтС свой Π±Ρ€Π΅Π½Π΄ работодатСля

  5. Ρ€Π΅ΠΊΠ»Π°ΠΌΠ°
    ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³Π°ΠΌ со всСго ΠΌΠΈΡ€Π°

  6. О компании

,

C ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ | Π£ΠΏΡ€ΠΎΡ‰Π΅Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π―Π·Ρ‹ΠΊ программирования C: Π§Ρ‚ΠΎΠ±Ρ‹ Π»Π΅Π³ΠΊΠΎ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ язык C, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π½Π΅ΠΌ. Как Π²Ρ‹, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡƒΠΆΠ΅ Π·Π½Π°Π΅Ρ‚Π΅, для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π²Π°ΠΌ понадобятся тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΈ компилятор для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° исходной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ нСпосрСдствСнно Π½Π° машинС. Dev C ++ IDE — Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€, поэтому, Ссли ΠΎΠ½Π° Π½Π΅ установлСна ​​на вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ компилятор Dev C ++.

Бписок ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ C

Hello world
ΠŸΠ΅Ρ‡Π°Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ³ΠΎ числа
Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅
НСчСтноС ΠΈΠ»ΠΈ Ρ‡Π΅Ρ‚Π½ΠΎΠ΅
Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅, ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠ΅
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° гласной
Високосный Π³ΠΎΠ΄
Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ†ΠΈΡ„Ρ€
Π€Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ°Π»
HCF ΠΈ LCM
ДСсятичноС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ΅ ΠΈ
nCM nPr
Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ n чисСл
ОбмСн
ΠžΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ число
Число ΠΏΠ°Π»ΠΈΠ½Π΄Ρ€ΠΎΠΌΠ°
Π Π°ΡΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ Π¨Π°Π±Π»ΠΎΠ½
Diamond
ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ числа
Найти число Армстронга
Π‘Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ число Армстронга
БСрия Π€ΠΈΠ±ΠΎΠ½Π°Ρ‡Ρ‡ΠΈ
Π Π°ΡΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ Π€Π»ΠΎΠΉΠ΄Π°
Π Π°ΡΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ Паскаля
Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с использованиСм ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ
ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт Π² массивС ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт Π² массивС
Π›ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ поиск
Π”Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ поиск
ΠžΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ массив
Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ элСмСнт Π² массив
Π£Π΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΈΠ· массива
ΠžΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ массивы
ΠŸΡƒΠ·Ρ‹Ρ€ΡŒΠΊΠΎΠ²Π°Ρ сортировка
Вставка
Выборочная сортировка
Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹
Π’Ρ‹Ρ‡Π΅ΡΡ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹
Π’Ρ€Π°Π½ΡΠΏΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ
Π£ΠΌΠ½ΠΎΠΆΠΈΡ‚ΡŒ Π΄Π²Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹
ΠŸΠ΅Ρ‡Π°Ρ‚ΡŒ строка
Π”Π»ΠΈΠ½Π° строки
Π‘Ρ€Π°Π²Π½ΠΈΡ‚ΡŒ строки
ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ строку
ΠžΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ строки
ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ строку
Найти ΠΏΠ°Π»ΠΈΠ½Π΄Ρ€ΠΎΠΌ
Π£Π΄Π°Π»ΠΈΡ‚ΡŒ гласныС
ΠŸΠΎΠ΄ΡΡ‚Ρ€ΠΎΠΊΠ° C
ΠŸΠΎΠ΄ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ
Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ строку
Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹
Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ рСгистр
ΠŸΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами строки
Частота символов
Анаграммы
ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»
ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²Π° Ρ„Π°ΠΉΠ»Π°
Бписок Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅
Π£Π΄Π°Π»ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»
Π‘Π»ΡƒΡ‡Π°ΠΉΠ½Ρ‹Π΅ числа
Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ комплСксныС числа
Π”Π°Ρ‚Π° ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ
ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ IP-адрСс
Π’Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ C

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ вас Π΅ΡΡ‚ΡŒ инструмСнт для создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄ΠΎΠ² Π·Π°Ρ‚Π΅ΠΌ см. ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ программирования Π½Π° C.Π’Π΅ΠΏΠ΅Ρ€ΡŒ я объясню Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ваши ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠΉ компилятор ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму. Π― объясню Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ компилятор Dev C ++, GCC ΠΈ Turbo C.

Dev C ++
1. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ( Ctrl + N ).
2. ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ΄.
3. НаТмитС Ctrl + F9 , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Если Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ошибки Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ компиляции, ΠΈΡΠΏΡ€Π°Π²ΡŒΡ‚Π΅ ΠΈΡ….
4. НаТмитС Ctrl + F10 , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΈ запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ C Π² компиляторС GCC
1. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ Π² Ρ„Π°ΠΉΠ»Π΅, скаТСм «hello.c» (Ρ†ΠΈΡ‚Π°Ρ‚Ρ‹ для ясности).
2. Для компиляции ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Β«gcc hello.cΒ».
3. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Β«./a.outΒ».

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ имя Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΊΠ°ΠΊ:
gcc hello.c -o hello.out
hello.out — это имя Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°.

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ Turbo C:
1. Π—Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ свой ΠΊΠΎΠ΄ Π² Ρ„Π°ΠΉΠ» ΠΈ сохранитС Π΅Π³ΠΎ.
2. Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅, Π½Π°ΠΆΠ°Π² Alt + F9 .
3. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ, Π½Π°ΠΆΠ°Π² Ctrl + F9 .
4. Для просмотра Π²Ρ‹Π²ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ( Alt + F5 ).

ΠžΡΠ½ΠΎΠ²Ρ‹ программирования Π½Π° C

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ, ΠΈ для взаимодСйствия с Π½ΠΈΠΌ Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ язык для общСния. БущСствуСт мноТСство языков, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ C, C ++, Java, Python ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ свои особСнности. Π”Π°Π²Π°ΠΉΡ‚Π΅ сначала обсудим, Π·Π°Ρ‡Π΅ΠΌ Π½Π°ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π²Π°ΠΌ даСтся Π΄Π΅ΡΡΡ‚ΡŒ чисСл, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ Π² порядкС возрастания, Ρ‚ΠΎΠ³Π΄Π° Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это Π»Π΅Π³ΠΊΠΎ, Π½ΠΎ Ρ‡Ρ‚ΠΎ, Ссли числа, скаТСм, Π΄Π΅ΡΡΡ‚ΡŒ тысяч, это Π±ΡƒΠ΄Π΅Ρ‚ трудная Π·Π°Π΄Π°Ρ‡Π° ΠΈ Π·Π°ΠΉΠΌΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ошибки.Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ эту Π·Π°Π΄Π°Ρ‡Ρƒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая это сдСлаСт, ΠΈ, Ссли Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π²Π΅Ρ€Π΅Π½, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π·Π° ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π² зависимости ΠΎΡ‚ скорости процСссора, здСсь ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

.

Leave a Comment

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