c++ 调用 perl 脚本

本文介绍了一个使用C/C++调用Perl脚本的例子,包括初始化Perl解释器、执行Perl脚本及获取脚本中变量的值等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include "EXTERN.h" //引用外部的头文件
#include "perl.h" //perl头文件 
int _tmain(int argc, _TCHAR* argv[])
{
        STRLEN n_a;
	char *embedding[] = {"","test.pl",""}; //perl脚本和参数,第一个为空
	//第二个为脚本文件,第三个为脚本的输入参数


	//定义一个perl解释器
	static PerlInterpreter *my_perl;


	//为解释器分配资源
	my_perl = perl_alloc();


	//创建一个解释器
	perl_construct( my_perl );


	//perl解析 
	//PERL_CALLCONV int perl_parse(PerlInterpreter* interp, XSINIT_t xsinit, int argc, char** argv, char** env)
	perl_parse(my_perl, NULL, 3, embedding, NULL);


	//执行脚本
	perl_run(my_perl);

	//获取脚本中变量a的值
	printf("a = %d\n", SvIV(perl_get_sv("a", FALSE)));


	//获取脚本中变量b的值
	printf("b = %f\n", SvNV(perl_get_sv("b", FALSE)));


	//获取脚本中变量c的值
	printf("a = %s\n", SvPV(perl_get_sv("a", FALSE), n_a));


	//析构解释器
	perl_destruct(my_perl);


	//释放解释器
	perl_free(my_perl);
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值