Препроцессор
В информатике, препроцессор — это компьютерная программа, принимающая данные на входе, и выдающая данные, предназначенные для входа другой программы, например, такой как компилятор. О данных на выходе препроцессора говорят, что они находятся в препроцессированной форме. Наиболее частый случай использования препроцессора — обработка исходного кода перед передачей его на следующий шаг компиляции. Языки программирования C/C++ и система компьютерной вёрстки TeX используют препроцессоры, значительно расширяющие их возможности. Название широко распространенного скриптового языка программирования PHP является рекурсивным акронимом "PHP: Hypertext Preprocessor".
Препроцессор C/C++Править
В языках программирования C и C++ используется препроцессор с возможностями:
- Замена триграфов ?=, ??(, ??) символами #,(,)
- Замена комментариев пустыми строками
- Включение файла —
#include
- Макро-подстановки —
#define
- Условная компиляция —
#if
,#ifdef
,#else
,#endif
Важной областью применения препроцессоров С является условная компиляция. При подготовке программы к компиляции разработчик может с помощью нескольких изменений адаптировать программу к текущей ситуации (например, к определенной модели процессора).
Язык программирования PHPПравить
PHP чаще всего используется при обработке веб-страниц. Текст страницы считывается и выдается в неизменном виде. Единственным исключением является наличие в тексте страницы инструкций PHP, ограниченных <?php в начале и ?> в конце.
Вот пример текста страницы, содержащей текущее время:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Текущее время</title> <head> <body> <h1>Текущее время</h1> <?php print strftime('Сейчас %H часов, %M минут %S секунд'); ?> </body> </html>
Препроцессор PHP заменит выделенную строку на:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Текущее время</title> <head> <body> <h1>Текущее время</h1> Сейчас 10 часов, 15 минут 20 секунд </body> </html>