C: відмінності між версіями

Матеріал з Енциклопедія Драматика
Перейти до навігації Перейти до пошуку
мНемає опису редагування
Рядок 1: Рядок 1:
{{Недопис}}
{{Недопис}}
{{Stub}}
'''С''' ''(Сі, сіся)'' - процедурна мова програмування, розроблена Кеном Томпсоном для написання ОС Unix. Саме у цієї мови спиздили синтаксис [[PHP]], [[Perl]], [[C++]], [[Java]] і всі-всі-всі.
'''С''' ''(Сі, сіся)'' - процедурна мова програмування, розроблена Кеном Томпсоном для написання ОС Unix. Саме у цієї мови спиздили синтаксис [[PHP]], [[Perl]], [[C++]], [[Java]] і всі-всі-всі.



Версія за 10:36, 21 лютого 2020

Dor3.png

Допиши кілька слів зі свого досвіду
Ми дописуємо Драматику разом і ця стаття потребує твоїх думок для повноти. Натисни "редагувати" згори сторінки чи розділу.

С (Сі, сіся) - процедурна мова програмування, розроблена Кеном Томпсоном для написання ОС Unix. Саме у цієї мови спиздили синтаксис PHP, Perl, C++, Java і всі-всі-всі.

Короткий огляд

Коментарі

  • //комент - до кінця рядка
  • /*комент*/ - від /* до */

Типи

Типізація - статична.

  • Числові: int, float, double...
  • Символьні: char
  • Логічні: bool

Реалізації

  • GCC
  • Turbo C
  • TCC

Діалекти

  • «K&R» C
  • ANSI C
  • C90
  • C99

Переваги

  • Дуже підходить під написання ОС і компіляторів. Лінукс, Віндовс написані на ньому.
  • Достатньо проста для новачка.
  • Відносно невелика кількість коду. [1]

Недоліки

  • Багатьом не подобається синтаксис. [2]
  • Багато елементів Сі - потенційно небезпечні.
    1. define true false;
    2. define private public
    3. define TRUE (rand() > 0.1 ? TRUE : FALSE)
  • Наявність вказівників*, які дозволяють змінювати не тільки значення змінних в пам'яті, але й сам програмний код
    • Йобнута реалізація масивів через ці самі вказівники, завдяки чому кулхацкер може легко проникнути в систему, наприклад.

Посилання

Примітки

  1. Відносно, наприклад, Pascal'я
  2. Безкінечні '}}}}}' та інше гівно.