Chinaunix首页 | 论坛 | 博客
  • 博客访问: 122580
  • 博文数量: 20
  • 博客积分: 1627
  • 博客等级: 上尉
  • 技术积分: 383
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-25 16:11
文章分类

全部博文(20)

文章存档

2012年(5)

2011年(2)

2010年(12)

2009年(1)

我的朋友

分类: C/C++

2011-04-12 14:47:04



#include <EXTERN.h>
#include <perl.h>

static PerlInterpreter *my_perl;

char buf[BUFSIZ];

main (int argc, char **argv, char **env)
{
        STRLEN n_a;
        SV *my;

        char *embedding[] = {"", "-e", "0"};
        PERL_SYS_INIT3(&argc,&argv,&env);
        my_perl = perl_alloc();
        perl_construct( my_perl );
        perl_parse(my_perl, NULL, 3, embedding, NULL);
        PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
        perl_run(my_perl);

        sprintf(buf, "$text=%s;\n%s", "xxxxxxxbbbbbbbbbbgggggeeeeeeee", "if ($text =~ /(b+)/){$a=$1;};");
        eval_pv(buf, TRUE);
        printf("a = %s\n", SvPV(get_sv("a", FALSE), n_a));

        /*
        eval_pv("$b; $a = 'rekcaH lreP=1234 rehtonA tsuJ'; if($a =~ /lreP=(\\d+)/){$b=$1};", TRUE);
        printf("b = %s\n", SvPV(get_sv("b", FALSE), n_a));
        */


        perl_destruct(my_perl);
        perl_free(my_perl);
        PERL_SYS_TERM();
}





gcc plcc.cpp  -L/usr/lib/perl5/core_perl/CORE/  -I/usr/lib/perl5/core_perl/CORE/ -lperl -lm

阅读(786) | 评论(0) | 转发(0) |
0

上一篇:sqlite3常见问题

下一篇:archlinux 中文支持

给主人留下些什么吧!~~