s4g  0.9.2
высокоуровневый, императивный, процедурный, встраиваемый, скриптовый язык программирования общего назначения, написанный на C++.
Информация о препроцессоре

Препроцессор удаляет комментарии из исходного кода и обрабатывает директивы, такие как #include <file> Включает код из файла file производя поиск по путям включений
#define macro arg - обьявляет дефайн с именем macro, который будет заменен на arg в коде программы
#define macro(arg1, arg2, ..., argN) arg1 arg2 - обьявляет макрос с именем macro и параметрами, который будет заменен с учетом параметров в программе
#if условие - Условное включение, если условие истинно, то следующая часть кода будет включена
#else - Условное включение, выполняется, если условие в #if ложно #endif - Заверщает условное включение, идет в паре с #if #ifdef имя - Условное включение, если имя определено, то следующая часть кода будет включена.

Работает с #else и требует #endif для завершения
#ifndef имя - То же, что #ifdef , только проверяет НЕ определенность