Chinaunix首页 | 论坛 | 博客
  • 博客访问: 629781
  • 博文数量: 51
  • 博客积分: 773
  • 博客等级: 军士长
  • 技术积分: 2392
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-07 21:32
文章分类
文章存档

2018年(1)

2013年(16)

2012年(34)

分类: LINUX

2012-05-07 21:53:03

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));

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

桔色花花朵2012-05-08 19:35:04

简单易懂,不错的文章,作为读书笔记不错的哈