Cтраница 4
Константные переменные используются так же, как символические константы, определяемые директивой препроцессора Idef ine и традиционно применяемые в программах на языке С. Там, где требуется константное выражение, нужно инициализировать константную переменную константным выражением. Подобно константе, определяемой оператором ttdefine, константная переменная может быть определена в файле заголовков, включенном в один или более исходных файлов, составляющих программу. В отличие от неконстантной переменной, константная по умолчанию является локальной для файла, в котором она определена. Иногда она может быть определена более чем в одном исходном файле, что не приводит к появлению ошибки при компоновке программы. [46]
Требуется же создать программу, позволяющую определять символические константы типа ENDFILE так, чтобы появляющиеся имена замещались определенной строкой символов независимо от содержимого контекста, в котором она находится Такие определения называются - макросами, процесс замещения - макрорасширением, а программа, предназначенная для выполнения этого, - макропроцессором. С помощью макропроцессора осуществляется копирование ввода в вывод с удалением макроопределений и производится расширение макросов. [47]
Символ означает, что заменяющий текст для символической константы или макроса продолжается на следующей строке. [48]
Преимуществом использования переменных с модификатором const вместо символических констант является то, что переменные с модификатором const видимы для символического отладчика; константы, определяемые с помощью define, для него невидимы. [49]
Символ указывает на то, что замещающий текст символической константы или макроса продолжается в следующей строке. [50]
При использовании типа-диапазон в качестве типа индекса рекомендуется употреблять символические константы. [51]