您的位置:首页 > 编程语言 > Python开发

python用ctypes调用C库文件,并且实现字符串传入传出。。。。。

2012-12-10 21:49 661 查看
#include<stdio.h>

void arrtest(char *p[],int c)
{
    int i;
    for (i = 0; i < c; i++) {
        printf("%s \n", p[i]);
        sprintf(p[i],"re%d",i); 
    }

    return;
}

gcc arrtest.c -fPIC -shared -o arr.so

from ctypes import *
array_type = c_char_p * 4
names = array_type()

names[0]="test1"
names[1]="test2"
names[2]="test3"
names[3]="test4"
api = CDLL('./arr.so')

api.arrtest(names,4)
for t in names:
	print t


python太强了,这样玩都可以,,,,服了

GCC4.6 + PYTHON 2.7通过

刚开始尝试写,搜索了下,,,



艹 看来不少人被这个返回恶心到了,最会也没搞定 return个字符串数组 就这样曲线返回了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: