C/C++ 中对Python的调用
来源:互联网 发布:java十进制转十六进制 编辑:程序博客网 时间:2024/05/16 13:44
C/C++对Python的调用层次可以分为三个层次,
- 高层次的调用
- 纯Python调用
- Python方法的扩展(也就使向Python输出调用函数).
这里我主要讨论(1)和(2)两种方法.
1. 高层次的调用
这是最简单的一种在C/C++中调用Python的方法. 它直接的调用Python提供的C调用接口函数, 这些函数主要有: PyRun_SimpleString(), PyRun_SimpleStringFlags(), PyRun_SimpleFile(), PyRun_SimpleFileEx()和PyRun_SimpleFileExFlags()几个. 函数的具体用法参考Python的文档.
这里举个例子来说明这种层次的用法:
由这个例子可见, 在C/C++中调用Python的内容非常简单, 只要构造一个简单的Python调用字符串.这里要注意的就是, Python调用串语句之间要用'/n'来分开, 且语句之间不能有空格, 如上面的Python字符串不能写成: "import sys/n print sys.path" , 否则要出错的.
//
以上的例子也表明了在C/C++中调用Python的基本结构, 就是
(1) 先初始化Python环境然: Py_Initialize()
(2) 具体对Python的操作
(3) 清除Python环境
更复杂的一个使用高层调用的例子, 这个例子用PyRun_SimpleFile的例子.
这里值得注意是, 在Window中:
(1) 链接debug版本的时候会自动链接PythonXX(_d).lib库, PythonXX_d安装时是没有安装的, 所以要显示的指定链接PythonXX.lib库, 不知道VC6.0为什么还会去找PythonXX_d.lib, 在vs7.0不会.
(2) 编译时要以 /MD(多线程DLL) 选项编译(不论时debug版本还时release版本都一样).
以上我在VC7.0中可以正确的运行, 在VC6.0这样还不行, 可能和我使用的版本有关系(我用的版本是:Python24.lib). 有知道的请赐教!!
2. 纯Python调用
- C/C++ 中对Python的调用
- Python对C 语言的调用
- C中调用PYTHON
- c中调用python
- python中调用c库
- python中调用c库
- C语言中调用python
- python调用c中函数
- Pro*C中对Oracle PL/SQL块的调用
- Objective-C中对IPhone设备震动的调用
- python调用c的方法
- C调用Python的函数
- Python调用 c 的函数
- Python调用C的代码
- C调用Python的函数
- python调用c的记录
- C/C++中如何调用Python方法
- C,C++代码中调用python脚本
- jni中使用数组的几个方法
- hello , how are you today?
- PixelSearch PixelGetColor
- 本人Blog阅前必读(郑重声明)
- 本 期'{主题}“如果,迷茫了…”(本人心得)愿与大家分享
- C/C++ 中对Python的调用
- 拖拽鼠标提示:显示区域的大小(ahk)
- 我在找jpeg算法源代码~
- php code test
- Jpivot入门
- 初级韩国语常用格式-时间关系
- asp 学习
- 成员函数中隐含的this指针的类型
- AutoHotkey ,将鼠标移动到某一颜色的位置 如:移动到颜色为F5FEEB的位置