Смотрите на препроцессор Повышения библиотека, которая позволяет Вам писать циклы в препроцессоре, и многое другое.
Вы используете рекурсивный, включают файлы. К сожалению, Вы не можете выполнить итерации цикла больше, чем максимальная глубина, которую позволяет препроцессор.
оказывается, что шаблоны C++ полны по Тьюрингу и могут использоваться похожими способами. Выезд Порождающее Программирование
Вот злоупотребление правилами, которые сделали бы его по закону. Запишите свой собственный препроцессор C. Заставьте его интерпретировать некоторые #pragma директивы путем, Вы хотите.
Я использую меташаблонное программирование с этой целью, его забаву, как только Вы получаете подвешивание его. И очень полезный время от времени, когда используется с усмотрением. Поскольку, как упомянуто ее завершенный Тьюринг, к точке, где можно даже заставить компилятор входить в бесконечный цикл или переполнение стека! Нет ничего как попытка получить немного кофе только, чтобы найти, что Ваша компиляция израсходовала 30 + гигабайты памяти и всего ЦП для компиляции кода бесконечного цикла!
Не совсем, что Вы спросили, но контроль эти ссылки на программу C, которая является также допустимым make-файлом и сценарием оболочки.
C, сделайте и окружите код, полагаются друг на друга для создания программы (?) C, которую, когда выполняется, поскольку сценарий оболочки скомпилирует сам через компилятор C с помощью make-файла!
победитель А в 2000 запутал конкурс C.
http://www.ioccc.org/2000/tomx.c
http://www.ioccc.org/2000/tomx.hint