Мова програмування c (сі)

Мова програмування c (сі)

Мову програмування C (треба вимовляти "сі") можна охарактеризувати як універсальний, економічний, з повноцінним набором операторів, з сучасною структурою даних і потоком управління. Цю мову не можна назвати "великою" мовою, також вона не претендує на звання "мови високого рівня", вона не створювалася під якісь конкретні завдання, навпаки, її намагалися зробити максимально ефективною для будь-яких застосувань. Цей цікавий сплав ідей, вкладених у мову програмування C зробив його дуже зручним і більш ефективним для широкого кола проблем, ніж інші, можливо, навіть більш просунуті мови.


Зв 'язок "С" з ОС "UNIX" дуже близький, оскільки ця мова розвивалася разом з "UNIX" і велика частина ПЗ для цієї системи написано саме на нім. Водночас С іноді називають мовою системного програмування, оскільки вважається, що з його допомогою зручно створювати операційні системи, насправді з таким же успіхом на ньому пишуть текстові редактори, програми обробки баз даних і гри.


C - мова програмування низького рівня, але не варто вважати, що це погано, насправді вона просто оперує тими ж об 'єктами, з якими постійно працюють будь-які ЕВМ, з символами, адресами і числами. При цьому всі об 'єкти об' єднуються, порівнюються або віднімаються за допомогою звичайних логічних і арифметичних дій, звичних для ЕВМ.

Хоча функції роботи зі складеними об 'єктами стають нормою у світі кодингу і їх вбудовують у всі сучасні мови програмування, C, на відміну від інших, не вміє працювати з такими об' єктами як рядок, список, масив або безліч. У ньому немає ніяких аналогів операцій PL/1 над цілими рядками і масивами.

З пам 'яттю С працює за допомогою стека і статистичного визначення, інших можливостей оперування пам' яттю С не має, ви не знайдете в ньому "купу" (Heap) або "прибирання сміття", як це вміють робити Паскаль або Алгол 68.

І навіть базові механізми, введення/виводу, мова С не забезпечує, операторів Read і Write ви в ньому не знайдете, також відсутні і вбудовані функції роботи з файловою системою. Такі високорівневі операції забезпечуються за допомогою підключених бібліотек.

А ще мова програмування C відмовиться працювати, якщо вам знадобиться мультипрограмування, синхронізація, паралельні операції, тощо. У ньому закладені можливості виключно для простої і послідовної роботи, його стихія: цикли, перевірки, угруповання та підпрограми.

Когось, можливо, здивує така скупість коштів наданих програмістам, ("чому я повинен викликати функцію кожен раз, коли мені необхідно порівняти пару рядків!"), але з іншого боку, саме завдяки такій економії коштів, програми, написані на С, отримують реальну перевагу в швидкості.


З іншого боку, невелика кількість операторів скорочує час, що потрібен для їх заучування, і вам вистачить декількох сторінок, щоб всіх їх описати. А ще як показує практика, компілятор з "С" - це компактний інструмент, який досить простий у написанні. Якщо користуватися сучасними засобами, компілятор для абсолютно нової ЕВМ буде готовий всього за пару місяців, при тому, що на 80% його код буде аналогічний коду попередніх версій. Завдяки такій своїй особливості, мова програмування C вважається дуже мобільною. Та й ефективність його така, що писати на асемблері будь-які програми, які критичні до продуктивності, як це було прийнято раніше, вже просто не має сенсу. Найкращим прикладом тому є сама ОС "UNIX", яка на 90% написана на "С" і прикладне ПЗ для неї, практично повністю створюване численними програмістами цією ж чудовою мовою, яка в даний момент вважається в світі мовою програмування номер один.