python3利用ctypes传入一个字符串类型的列表方法


Posted in Python onFebruary 12, 2019

c语言里:c_p.c

#include <stdio.h>

void get_str_list(int n, char *b[2])
{
 printf("in c start");
 for(int i=0;i<n;i++)
 {
  printf("%s", *(b+i));
  printf("\n");
 }
 printf("in c end");
}

编译为动态库的命令:

gcc -o hello1.so -shared -fPIC c_p.c

python里:p_c.py

from ctypes import *
ll = cdll.LoadLibrary
lib = ll("./12_23_ctype_list/hello1.so")
n = 3
str1 = c_char_p(bytes("nihao", 'utf-8'))
str2 = c_char_p(bytes("shijie", 'utf-8'))

a = (c_char_p*2)(str1, str2)
lib.get_str_list(2, a)

输出

in c startnihao
shijie
in c end

以上这篇python3利用ctypes传入一个字符串类型的列表方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python3基础之函数用法
Aug 13 Python
Python的math模块中的常用数学函数整理
Feb 04 Python
python自动化脚本安装指定版本python环境详解
Sep 14 Python
Python方法的延迟加载的示例代码
Dec 18 Python
Python操作Redis之设置key的过期时间实例代码
Jan 25 Python
python3如何将docx转换成pdf文件
Mar 23 Python
django中静态文件配置static的方法
May 20 Python
对Python中数组的几种使用方法总结
Jun 28 Python
python实现简易淘宝购物
Nov 22 Python
django model 条件过滤 queryset.filter(**condtions)用法详解
May 20 Python
python按顺序重命名文件并分类转移到各个文件夹中的实现代码
Jul 21 Python
python 装饰器的实际作用有哪些
Sep 07 Python
使用python绘制二元函数图像的实例
Feb 12 #Python
python matplotlib实现双Y轴的实例
Feb 12 #Python
对Pycharm创建py文件时自定义头部模板的方法详解
Feb 12 #Python
numpy基础教程之np.linalg
Feb 12 #Python
详解Python logging调用Logger.info方法的处理过程
Feb 12 #Python
Python numpy中矩阵的基本用法汇总
Feb 12 #Python
python读取csv和txt数据转换成向量的实例
Feb 12 #Python
You might like
php中如何同时使用session和cookie来保存用户登录信息
2013/07/05 PHP
PHP编程计算两个时间段是否有交集的实现方法(不算边界重叠)
2017/05/30 PHP
用 javascript 实现的点击复制代码
2007/03/24 Javascript
让JavaScript 轻松支持函数重载 (Part 1 - 设计)
2009/08/04 Javascript
ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
2012/01/13 Javascript
JQUERY 实现窗口滚动搜索框停靠效果(类似滚动停靠)
2013/03/27 Javascript
在页面上用action传递参数到后台出现乱码的解决方法
2013/12/31 Javascript
jQuery动态修改超链接地址的方法
2015/02/13 Javascript
使用jquery给指定的table动态添加一行、删除一行
2016/10/13 Javascript
canvas学习之API整理笔记(一)
2016/12/29 Javascript
nodejs基础应用
2017/02/03 NodeJs
jQuery插件zTree实现获取当前选中节点在同级节点中序号的方法
2017/03/08 Javascript
ES6新特性之字符串的扩展实例分析
2017/04/01 Javascript
angularJs中json数据转换与本地存储的实例
2018/10/08 Javascript
angular6的响应式表单的实现
2018/10/10 Javascript
Vue-cli3简单使用(图文步骤)
2019/04/30 Javascript
JS Generator 函数的含义与用法实例总结
2020/04/08 Javascript
js实现html滑动图片拼图验证
2020/06/24 Javascript
详解微信小程序动画Animation执行过程
2020/09/23 Javascript
[10:53]2018DOTA2国际邀请赛寻真——EG
2018/08/11 DOTA
[03:08]迎霜节狂欢!2018年迎霜节珍藏Ⅰ一览
2018/12/25 DOTA
[19:54]夜魇凡尔赛茶话会 第一期02:看图识人
2021/03/11 DOTA
Python基础学习之时间转换函数用法详解
2019/06/18 Python
Django接收post前端返回的json格式数据代码实现
2019/07/31 Python
Python.append()与Python.expand()用法详解
2019/12/18 Python
html5指南-1.html5全局属性(html5 global attributes)深入理解
2013/01/07 HTML / CSS
复古斯堪的纳维亚儿童服装:Baby go Retro
2017/09/09 全球购物
北美主要的汽车零部件零售商:AutoShack.com
2019/02/23 全球购物
如何强制垃圾回收
2015/10/06 面试题
用C#语言写出在本地创建一个UDP接收端口的具体过程
2016/02/22 面试题
优秀员工自荐书范文
2013/12/08 职场文书
开业典礼主持词
2014/03/21 职场文书
捐助倡议书范文
2014/04/15 职场文书
工作总结与自我评价
2014/09/18 职场文书
详解Android中的TimePickerView(时间选择器)的用法
2022/04/30 Java/Android
多线程Spring通过@Scheduled实现定时任务
2022/05/25 Java/Android