python ctypes库2_指定参数类型和返回类型详解


Posted in Python onNovember 19, 2019

python函数的参数类型和返回类型默认为int。

如果需要传递一个float值给dll,那么需要指定参数的类型。

如果需要返回一个flaot值到python中,那么需要指定返回数据的类型。

数据类型参考python文档:

https://docs.python.org/3.6/library/ctypes.html#fundamental-data-types

import ctypes
path = r'E:\01_Lab\VisualStudioLab\cpp_dll\cpp_dll\Debug\cpp_dll.dll'
dll = ctypes.WinDLL(path)
 
dll.add_float.argtypes = [ctypes.c_float,ctypes.c_float]
dll.add_float.restype = ctypes.c_float
 
data_float = dll.add_float(7,10) # (ctypes.c_float(7.0),ctypes.c_float(10.0))

c++中函数如下:

DLLEXPORT float __stdcall add_float(float a,float b)
{
 float sum = a + b;
 return sum;
}

以上这篇python ctypes库2_指定参数类型和返回类型详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python操作MySQL数据库具体方法
Oct 28 Python
python中list常用操作实例详解
Jun 03 Python
Python引用模块和查找模块路径
Mar 17 Python
详解Python如何获取列表(List)的中位数
Aug 12 Python
Python机器学习库scikit-learn安装与基本使用教程
Jun 25 Python
python+flask实现API的方法
Nov 21 Python
python tools实现视频的每一帧提取并保存
Mar 20 Python
centos7中安装python3.6.4的教程
Dec 11 Python
Python2与Python3的区别点整理
Dec 12 Python
python3.9.1环境安装的方法(图文)
Feb 02 Python
Python抖音快手代码舞(字符舞)的实现方法
Feb 07 Python
python-for x in range的用法(注意要点、细节)
May 10 Python
Python 使用type来定义类的实现
Nov 19 #Python
Pytorch中index_select() 函数的实现理解
Nov 19 #Python
wxPython多个窗口的基本结构
Nov 19 #Python
windows中安装Python3.8.0的实现方法
Nov 19 #Python
让你的Python代码实现类型提示功能
Nov 19 #Python
wxPython实现分隔窗口
Nov 19 #Python
浅谈Python type的使用
Nov 19 #Python
You might like
基于OpenCV的PHP图像人脸识别技术
2009/10/11 PHP
phpExcel中文帮助手册之常用功能指南
2014/08/18 PHP
PHP获取路径和目录的方法总结【必看篇】
2017/03/04 PHP
javascript 放大镜效果js组件 qsoft.PopBigImage.v0.35 加入了chrome支持
2009/04/07 Javascript
关于jQuery $.isNumeric vs. $.isNaN vs. isNaN
2013/04/15 Javascript
Javascript:为input设置readOnly属性(示例讲解)
2013/12/25 Javascript
禁用页面部分JavaScript不是全部而是部分
2014/09/03 Javascript
nodejs通过phantomjs实现下载网页
2015/05/04 NodeJs
angularjs学习笔记之双向数据绑定
2015/09/26 Javascript
jqGrid用法汇总(全经典)
2016/06/28 Javascript
BOM系列第三篇之定时器应用(时钟、倒计时、秒表和闹钟)
2016/08/17 Javascript
JS中如何实现Laravel的route函数详解
2017/02/12 Javascript
移动端触屏幻灯片图片切换插件idangerous swiper.js
2017/04/10 Javascript
JS时间控制实现动态效果的实例讲解
2017/07/31 Javascript
es6学习之解构时应该注意的点
2017/08/29 Javascript
jsonp跨域获取数据的基础教程
2018/07/01 Javascript
vue自定义全局共用函数详解
2018/09/18 Javascript
ES6 对象的新功能与解构赋值介绍
2019/02/05 Javascript
使用原生JS实现火锅点餐小程序(面向对象思想)
2019/12/10 Javascript
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
Python实现基于二叉树存储结构的堆排序算法示例
2017/12/08 Python
python2.7到3.x迁移指南
2018/02/01 Python
基于python 爬虫爬到含空格的url的处理方法
2018/05/11 Python
Django开发中的日志输出的方法
2018/07/02 Python
python实现动态创建类的方法分析
2019/06/25 Python
pycharm配置git(图文教程)
2019/08/16 Python
Python paramiko模块使用解析(实现ssh)
2019/08/30 Python
python自动下载图片的方法示例
2020/03/25 Python
Python基于gevent实现文件字符串查找器
2020/08/11 Python
用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别
2012/11/04 面试题
西门豹教学反思
2014/02/04 职场文书
大学学雷锋活动总结
2014/06/26 职场文书
生日答谢词
2015/01/05 职场文书
房产公证书格式
2015/01/26 职场文书
Go标准容器之Ring的使用说明
2021/05/05 Golang
忆童年!用Python实现愤怒的小鸟游戏
2021/06/07 Python