Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Основные директивы компилятора




Общее описание компилятора

Компилятор

Существуют два компилятора: встроенный в интегрированную среду разработки Delphi и автономный Dcc32.Exe.

Автономный компилятор вызывается из командной строки DOS в виде: Dcc32 [<опции>] <имя файла> [<опции>]. Описание опций можно получить на экране, если в командной строке указать только Dcc. Каждая опция начинается с символа «/». Если расширение файла не указано, то предполагается расширение.Dpr или.Pas (при отсутствии файла проекта). Если файл является программой, библиотекой, пакетом или модулем, то создается, соответственно, исполняемый файл.Exe, библиотека.Dll, пакет.Bpl, объектный модуль.Dcu.

Управление компилятором осуществляется директивами. Ди­рек­тива заключается в фигурные скобки и начинается с символа «$». Су­щест­вует три типа директив: ключевые, параметры и условной компи­ля­ции.

Ключевые директивы включают или выключают соответствующие возможности компилятора и имеют две формы записи: сокращенную и длинную. Сокращенная запись директивы состоит из односимвольного имени директивы и знака «+» (включение) или знака «‑«(выключение). Длинная запись состоит из имени директивы и слов «On» (включение) или «Off» (выключение). Пример. {$I+} или {$OICHECKS ON}.

Ключевые директивы могут объединяться в группы через запятые ({SB+,R‑,S‑}). Ключевые директивы, расположенные до начала объявления переменный, являются глобальными и действуют на весь процесс компи­ляции; остальные директивы ‑ локальные.

Директивы параметров определяют значения различных параметров компилятора (например, {$L имя файла}).

Директивы условной компиляции позволяют исключать из компиляции различные фрагменты программы в зависимости от условий.

Настройка умалчиваемых значений ключевых директив осуществля­ет­ся диалоговой командой Project/Options/Compiler.

{$A+}, {$Allign On} ‑ выравнивание полей записей на границу слова.

{$B+}, {$Boolean On} ‑ вычисление логических выражений полностью.

{$С+}, {$Assertions On} ‑ проверка условий в процедуре Assert (п. 1.7.9).

{$D+}, {$DebuggInfo On} ‑ генерация отладочной информации.

{$D ‘текст’},{$Description ‘текст’} ‑ заголовок программы DLL.

{$G+}, {$ImprotedData On} ‑ включение в пакет данных.

{$I+}, {$IOChecks On} ‑ включение контроля результатов работы операции файлового ввода‑вывода. При возникновении ошибки генерируется исключение EinOutError (п.1.6.2). Если {I‑}, исключение не генерируется, а для анализа результата используется функция IOResult (п.1.8.2.1).

{$L файл}, {$Link файл} ‑ использовать компоновщику указанный файл для связывания с программой или модулем.

{$H+}, {$LongStrings On} ‑ использовать строку типа String как длинную.

{$P+}, {$OpenStrings On} ‑ использовать открытые строки.

{$Q+},{$OverFlowChecks On} ‑ проверка переполнения при целочисленных операциях (исключение EIntOverFlow (п.1.7.9)).

{$R+},{$RangeChecks On} ‑ проверка диапазона целочисленных значений, индексов массивов и коротких строк (исключение ERangeError (п.1.7.9)).

{$R файл},{$Resource файл} ‑ указывает имя ресурсного файла.

{$RunOnly On} ‑ компиляция пакета только на этапе выполнения программы.

{$T+},{$Typedaddress On} ‑ контроль за соответствием типов указателей.

{$M+},{$TypeInfo On} ‑ генерация кода контроля типов при выполнении.

{$M n,k} ‑ минимальное (n) и максимальное (k) значения размера стека в байтах для размещения локальных переменных. Если размер мал, то генерируется исключение EstackOverFlow (п.1.6.2) ($M 16384, 1048576).

{$V+},{$VarStringChecks On} ‑ контроль длины строковых параметров.

{$J+},{$WriteAbleConst On} ‑ типизированные константы рассматриваются как переменные с исходными значениями.




Поделиться с друзьями:


Дата добавления: 2014-12-08; Просмотров: 538; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.