1、c中呼叫python
#include
int main(int argc, char *ar**)
使用前工具:
vc++編譯器
python 直譯器
如沒有裝vc,可以去微軟**下乙個c++的編譯器,位址如下:
裝完後,在環境變數中把python的include和libs分別加入下面2個巨集
include
lib1、c中呼叫python
#include
int main(int argc, char *ar**)
直接用cl 檔名 編譯就是
2、用c生成dll,用python呼叫
c**:如foo.c
#include
/* define the method table. */
static pyobject *foo_bar(pyobject *self, pyobject *args);
static pymethoddef foomethods = ,
};/* here's the initialization function. we don't need to do anything
for our own needs, but python needs that method table. */
void initfoo()
/* finally, let's do something ... involved ... as an example function. */
static pyobject *foo_bar(pyobject *self, pyobject *args)
c定義檔案:foo.def
exports
initfoo
編譯生成foo.dll
cl -c foo.c;
link foo.obj /dll /def:foo.def /out:foo.dll
在python中呼叫:
import foo
dir(foo)
…即可以看到結果:
>>> import foo
>>> dir(foo)
['__doc__', '__file__', '__name__', 'bar']
>>> ^z
PYTHON 與C相互互動呼叫例項解析
使用前工具 vc 編譯器 python 直譯器 如沒有裝 vc,可以去微軟 下乙個 裝完後,在環境變數中把 python 的include 和libs 分別加入下面2個巨集 include lib1 c 中呼叫python include int main int argc,char argv 直接...
lua與C 相互呼叫
新建乙個工程,將編譯出來的lua.lib包含進來,就可以開始用了 1 c 呼叫 lua 編寫 如下 include using namespace std pragma comment lib,lua.lib extern c void main int nret lual loadfile l,l...
C與C 之間相互呼叫
c與c 之間相互呼叫 1 匯出c函式以用於c或c 的專案 如果使用c語言編寫的dll,希望從中匯出函式給c或c 的模組訪問,則應使用 cplusplus 預處理器巨集確定正在編譯的語言。如果是從c 語言模組使用,則用c鏈結宣告這些函式。如果使用此技術並為dll提供標頭檔案,則這些函式可以原封不動地由...