Python Ctypes结构体指针处理(函数参数,函数返回)
生活随笔
收集整理的這篇文章主要介紹了
Python Ctypes结构体指针处理(函数参数,函数返回)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
參考網(wǎng)址: http://www.2cto.com/kf/201109/106444.html
本文演示了在python中調(diào)用C語言生成的動(dòng)態(tài)庫,返回結(jié)構(gòu)體指針,并進(jìn)行輸出!
test.c(動(dòng)態(tài)庫源代碼)
// 編譯生成動(dòng)態(tài)庫: gcc -g -fPIC -shared -o libtest.so test.c#include <stdio.h> #include <string.h> #include <stdlib.h>typedef struct StructPointerTest {char name[20];int age; }StructPointerTest, *StructPointer;StructPointer test() // 返回結(jié)構(gòu)體指針 { StructPointer p = (StructPointer)malloc(sizeof(StructPointerTest)); strcpy(p->name, "Joe");p->age = 20;return p; }編譯:gcc -g -fPIC -shared -o libtest.so test.c
call.py(python調(diào)用C語言生成的動(dòng)態(tài)庫):
最后運(yùn)行結(jié)果: [zcm@c_py #112]$make clean rm -f *.o libtest.so [zcm@c_py #113]$make gcc -g -fPIC -shared -o libtest.so test.c [zcm@c_py #114]$./call.py Joe: 20 [zcm@c_py #115]$
總結(jié)
以上是生活随笔為你收集整理的Python Ctypes结构体指针处理(函数参数,函数返回)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Win10无线投屏功能安装失败解决办法
- 下一篇: 企业微信多开