Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Историческая справка. Язык был создан Ритчи Д. для ОС Unix, для ЭВМ PDP-11




Язык был создан Ритчи Д. для ОС Unix, для ЭВМ PDP-11. Для этой ОС все общесистемные и прикладные программы были реализованы на этом языке. Основная цель была – создать язык системного программирования для разработки мобильных (переносимых) программ.

Основные сведения

Си обеспечивает работу с символами, числами и адресами. За счет последнего Си может быть использован в качестве системного ЯП. В Си нет операций для обработки составных объектов в целом (строк, множеств, массивов) как в PL/1. В значительной степени перекрываются возможности Ассемблера – работа с байтами, адресами, анализ битов, сдвига содержимого регистров, доступ к регистрам. Язык считается не слишком надежным из-за свободного доступа к ячейкам памяти через указатели. Этот недостаток, однако, компенсируется его простотой, эффективной реализацией и широким диапазоном возможностей для работы с данными от битов до арифметических данных повышенной размерности.

Управляющие конструкции обеспечивают поддержку структурированного программирования:

· ветвление – (if),

· циклы – (for, while, do),

· переключатель – (switch).

Адресная арифметика поддерживается ссылочным типом данных (указателями).

К любой функции можно обратиться рекурсивно.

Управление данными сводится к передаче аргументов по значению – путем копирования аргументов; функции не могут менять значения аргументов, передаваемых из обратившейся к ним программы. Если необходимо обеспечить вызов по ссылке, чтобы можно было менять значение передаваемых данных, то необходимо явно передавать адрес этих данных. Сам адрес передается по значению. Может быть передан адрес функции.

Существующие трансляторы для Си не обеспечивают во время работы программы никаких проверок индексов массивов, типов аргументов и т.п. Когда необходим строгий контроль типов, необходимо использовать верификатор lint, который анализирует программу на возможность появления различных типов ошибок, таких, как несогласованность типов аргументов, неинициализированные переменные и т.д.

Дополнительная гибкость программирования обеспечивается текстовым препроцессором. Его утверждения все начинаются с символа “#”, например: #include…, #define… и т.д.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных