C: відмінності між версіями
Перейти до навігації
Перейти до пошуку
Немає опису редагування |
MiskoGe (обговорення | внесок) м (Відкинуто редагування Myrkit Stepan (обговорення) до зробленого Petrovych.php) Мітки: Замінено Відкіт |
||
| Рядок 1: | Рядок 1: | ||
{{Stub}} __NOTOC__ | |||
'''С''' ''(Сі, сіся)'' - процедурна мова програмування, розроблена Кеном Томпсоном для написання ОС Unix. Саме у цієї мови спиздили синтаксис [[PHP]], [[Perl]], [[Java]] і всі-всі-всі. | |||
== Короткий огляд == | |||
=== Коментарі === | |||
*<code>//комент</code> - до кінця рядка | |||
*<code>/*комент*/</code> - від ''/*'' до ''*/'' | |||
=== Типи === | |||
Типізація - статична. | |||
*Числові: int, float, double... | |||
*Символьні: char | |||
*Логічні: bool | |||
=== Реалізації === | |||
*GCC | |||
*Turbo C | |||
*TCC | |||
=== Діалекти === | |||
*«K&R» C | |||
*ANSI C | |||
*C90 | |||
*C99 | |||
== Переваги == | |||
*Дуже підходить під написання [[ОС]] і компіляторів. [[Лінукс]], [[Windows|Віндовс]] написані на ньому. | |||
*Достатньо проста для новачка. | |||
*Відносно невелика кількість коду. <ref>Відносно, наприклад, Pascal'я</ref> | |||
== Недоліки == | |||
*Багатьом не подобається синтаксис. <ref>Безкінечні '}}}}}' та інше гівно.</ref> | |||
*Багато елементів Сі - потенційно небезпечні. | |||
*#define true false; | |||
*#define private public | |||
*#define TRUE (rand() > 0.1 ? TRUE : FALSE) | |||
*Наявність вказівників*, які дозволяють змінювати не тільки значення змінних в пам'яті, але й сам програмний код | |||
**Йобнута реалізація масивів через ці самі вказівники, завдяки чому кулхацкер може легко проникнути в систему, наприклад. | |||
== Див. таож == | |||
* [[C++]] | |||
* [[C Sharp]] | |||
== Примітки == | |||
{{reflist}} | |||
{{Айті|що=int main(){return 0;} }} | |||
= | |||
Поточна версія на 17:40, 22 листопада 2022
С (Сі, сіся) - процедурна мова програмування, розроблена Кеном Томпсоном для написання ОС Unix. Саме у цієї мови спиздили синтаксис PHP, Perl, Java і всі-всі-всі.
Короткий огляд
Коментарі
//комент- до кінця рядка/*комент*/- від /* до */
Типи
Типізація - статична.
- Числові: int, float, double...
- Символьні: char
- Логічні: bool
Реалізації
- GCC
- Turbo C
- TCC
Діалекти
- «K&R» C
- ANSI C
- C90
- C99
Переваги
- Дуже підходить під написання ОС і компіляторів. Лінукс, Віндовс написані на ньому.
- Достатньо проста для новачка.
- Відносно невелика кількість коду. [1]
Недоліки
- Багатьом не подобається синтаксис. [2]
- Багато елементів Сі - потенційно небезпечні.
- define true false;
- define private public
- define TRUE (rand() > 0.1 ? TRUE : FALSE)
- Наявність вказівників*, які дозволяють змінювати не тільки значення змінних в пам'яті, але й сам програмний код
- Йобнута реалізація масивів через ці самі вказівники, завдяки чому кулхацкер може легко проникнути в систему, наприклад.
Див. таож
Примітки
| |||||||||||||||||||