Cで2進数値を記述
を読んだら、「Rubyでプリプロセス」という手があるのかと。
そんなわけでerbでプリプロセスしてみた。
binary.erb.c
#include <stdio.h> #include <stdlib.h> int main(void) { printf("%d\n", <%= 0b1010101010101010 %>); return EXIT_SUCCESS; }
cの中に、rhtml形式を導入して・・・
Makefile
test : binary Makefile ./binary % : %.c Makefile gcc -o $@ $< %.c : %.erb.c Makefile erb $< > $@
make書いちゃって、
makeする
make!
% make erb binary.erb.c > binary.c gcc -o binary binary.c ./binary 43690
これからはC言語も自動生成ダネ。