Chinaunix首页 | 论坛 | 博客
  • 博客访问: 38551
  • 博文数量: 9
  • 博客积分: 28
  • 博客等级: 民兵
  • 技术积分: 55
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-06 14:53
文章分类

全部博文(9)

文章存档

2012年(9)

我的朋友
最近访客

分类:

2012-05-08 21:46:11

C语言调用Python函数的主要框架比较简单,当然还有些具体细节没涉及:
  1. PyObject *pModule;
  2. PyObject *pFunction;
  3. PyObject *pArgs;
  4. PyObject *pRetValue;

  5. Py_Initialize();
  6. if ( !Py_IsInitialized())
  7.     return -1;
  8. pModule = PyImport_ImportModule("PyTest") ;//PyTest就是PyTest.py,不要后缀名
  9. pFunction = PyObject_GetAttrString(pModule, FunctionName); //FunctionName是PyTest脚本中要调用的函数名
  10. pArgs = PyTuple_New(2); //2个参数
  11. PyTuple_SetItem(pArgs, 0, Py_BuildValue("l", 5));
  12. PyTuple_SetItem(pArgs, 1, Py_BuildValue("l", 7));

  13. pRetValue = PyObject_CallObject(pFunction, pArgs);

  14. printf("ret=%d\n", PyInt_AsLong(pRetValue));
  15. printf("ret=%s\n", PyString_AsString(pRetValue));

阅读(1386) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~