200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > c语言代码可以python运行吗_c语言如何运行python脚本

c语言代码可以python运行吗_c语言如何运行python脚本

时间:2023-11-19 15:37:31

相关推荐

c语言代码可以python运行吗_c语言如何运行python脚本

目前的C/C++与python的混合编程分为两大类:

1、使用python调用c/c++编写的扩展库,扩展python的功能,我们暂且称为python调用c/c++

2、使用c/c++程序调用执行python中定义的函数等,我们暂且称为c/c++调用python

本文只针对c/c++调用执行python作一方面的介绍,如有不正确的地方,还请诸位批评指正。

目前,主流的用法是把python作为一种文本形式的链接库,在c/c++程序中调用其中定义的函数,这方面的资料很多,本文就不在赘述了,本文重点介绍一种完整调用python脚本文件及参数的方法,闲话少说,上例子:

以下是测试用的python脚本文件,功能是输出命令行参数:sample.py# !/usr/bin/env python2.6

import sys

def test():

for arg in sys.argv:

print arg

if __name__=='__main__':

test()

以下是测试用的c++程序文件:test.c++#include "python2.6/Python.h"

int main()

{

//第一步:初始化Python

//在调用Python的提供的给C的API之前,通过执行初始化

//来添加Python的内建模块、__main__、sys等

Py_Initialize();

//检查初始化是否完成

if (!Py_IsInitialized())

{

return -1;

}

//第二步:导入sys模块

PyRun_SimpleString("import sys");

//第三步:导入执行脚本时的命令行参数,如:./sample.py arg1 arg2

PyRun_SimpleString("sys.argv['arg1','arg2']");

//第四步:执行调用脚本文件命令,注意文件的路径

if (PyRun_SimpleString("execfile('./sample.py')") == NULL)

{

return -1;

}

//第五步:关闭Python解释器

Py_Finalize();

return 0;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。