UNIX下perl实现代码
源代码在线查看: cpp.aux
#!./perl -P print "1..3\n"; #define MESS "ok 1\n" print MESS; #ifdef MESS print "ok 2\n"; #else print "not ok 2\n"; #endif open(TRY,">Comp.cpp.tmp") || die "Can't open temp perl file."; ($prog = X$ok = "not ok 3\n"; X#include "Comp.cpp.inc" X#ifdef OK X$ok = OK; X#endif Xprint $ok; END print TRY $prog; close TRY; open(TRY,">Comp.cpp.inc") || (die "Can't open temp include file."); print TRY '#define OK "ok 3\n"' . "\n"; close TRY; $pwd=`pwd`; $pwd =~ s/\n//; $x = `./perl -P Comp.cpp.tmp`; print $x; unlink "Comp.cpp.tmp", "Comp.cpp.inc";