Встроенные функции макрокомпилятора |
Встроенные функции макрокомпилятора позволяют пользователю использовать в исходном тексте программы выражения, точное значение которых будет специфицировано только в момент компиляции и будет базироваться на информации, известной компилятору.
#__DATE__
Строка с датой формата DD/MM/YYYY. Значение строки равно дате запуска компилятора. В процессе компиляции не изменяется.
#__TIME__
Строка со временем формата HH:MM:SS. Значение строки равно времени запуска компилятора. В процессе компиляции не изменяется.
#__DATETIME__
Строка с датой и временем формата DD/MM/YYYY HH:MM:SS. Значение строки соответствует моменту запуска компилятора. В процессе компиляции не изменяется.
#__LINE__
Номер текущей строки компилируемого файла в десятичном формате. Значение изменяется с началом компиляции следующей строки.
#__FILE__
Полное имя компилируемого файла. Изменяется при переключении входного потока на другой файл.
#__TOOLVER__
Версия инструментария (
), на котором был построен компилятор. Значение остается неизменным после создания исполняемого файла компилятора.
#__COPYRIGHT__
Соответствует значению константы ToolsYear из исходного файла version.inc.
#__TOOLVERSION__
Версия инструментария (
), преобразованная в число с плавающей точкой из константы __TOOLVER__ формата M.NN.LL в соответствии с выражением M * 1000 + NN + LL / 1000.#__DEFINED__(<имя-макро-переменной>)
Если макро переменная с указанным именем была определена ранее, значением функции будет строка '1', иначе - строка '0'.
#__EVALUATE__(<выражение>)
Результатом макрофункции будет вычисленное значение выражения.
Закомментировать макрофункции можно только символом ! (восклицательный знак) в первой позиции. Все остальные виды комментариев макрофункции игнорируют. Аналогично комментируются строки выражения в #__EVALUATE__.