栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言第五篇 python调用C语言写的动态链接库DLL文件

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言第五篇 python调用C语言写的动态链接库DLL文件

学习目标:1、学会C语言写windows下的DLL文件。2、用gcc命令将C程序编译成DLL文件。3、学会用python调用C语言写的DLL。 学习内容1:先用C语言写一个简单程序,先建立dll.c文件,在这个程序中,可以不包括main函数。比如

int ADD(int a,int b)  //定义一个两个整数相加的函数ADD,里面有两个参数
{
    return a+b;
}

int SUB(int a,int b) //定义一个两个整数相减的函数SUB,里面有两个参数

{
    return a-b;
}


学习内容2:用gcc命令将C程序编译成DLL文件,在VScode终端下或者CMD下输入 :
 gcc -shared -fPIC -o dll.dll .dll.c   //这句话的意思是通过gcc 生成共享的dll提供其他程序调用。 其中.dll.c是当前目录下的c文件,用dll.c生成dll.dll文件。

输入完毕后就会在当前的c程序目录下生成dll.dll的文件,将这个文件拷贝到 python程序的目录中。


学习内容3:在python中写一个调用程序
'''
时间:2022年5月5日11时10分
作者:科技推动生产力
作者小站:https://vrxun.com  (VR迅)
'''
import ctypes //导入ctppes包,注意这是init文件,所以是包,不是模块
dll = ctypes.windll.LoadLibrary("./python语言/dll.dll") #/加载dll文件
print("两个数相加得到值是: ",dll.ADD(111,6))#调用DLL文件中的函数ADD
print("两个数相减的值是:",dll.SUB(222-7)) #调用DLL文件中函数SUB

代码结果:

两个数相加得到值是:  117
两个数相减的值是: 214

这就是用python简单调用C语言DLL的用法。python中的ctypes包默认安装时就有了,不用再进行pip下载安装了。

python调用C程序的DLL的应用场景多是用C语言写核心代码,更多用C去实现底层的程序,用python实现应用层的程序。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/864689.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号