python可以直接调用C语言的函数,本文记录用ctypes调用c语言的方法。

test.c

#include <stdio.h>int test(char *temp)
{printf("temp:%s\n", temp);return 0;
}

编译成动态库

gcc test.c -fPIC -shared -o libtest.so

test.py

#!/usr/bin/env python
import osfrom ctypes import *
# 加载动态库
t = cdll.LoadLibrary(os.getcwd() + '/libtest.so')
# 调用其中的函数
t.test('hello'.encode())

运行结果

qt@tony:~$ ./test.py
temp:hello

Tony Liu

2017-6-2, Shenzhen

python 调用 C语言函数相关推荐

  1. python调用c语言函数_从Python调用C函数

    python调用c语言函数 We can call a C function from Python program using the ctypes module. 我们可以使用ctypes模块从P ...

  2. python调用c语言内核计算,在Linux上实现Python调用C语言函数

    一般思路 Python中内置ctypes库,需调用c编译成的.so文件来实现函数调用. 假设我们所需调用的c文件名为test.c,文件里有我们需要的函数func(x,y). 将.c文件编译成 .so文 ...

  3. python调用C语言函数(方法)的几种方法

    1. 使用ctypes 可能是Python调用C方法中最简单的一种 2. 使用SWIG 是Python中调用C代码的另一种方法.在这个方法中,开发人员必须编写一个额外的接口文件来作为SWIG的入口. ...

  4. Python调用C语言函数

    Python调用C,主要是依靠Python的ctypes调用动态链接库 返回"简单类型" C代码: int multiply(int num1, int num2) {return ...

  5. go加载python_python培训 | python调用go语言来提速

    在写一些对性能要求十分严格的功能的时候,python往往力不从心.毕竟是一个解释性的语言,没有办法和变异性的语言去比较速度和内存占用率.但是python的本身的特定就使得我们可以将耗时的操作移交给编译 ...

  6. python调用r语言加载包错误_Python调用R语言

    网络上经常看到有人问数据分析是学习Python好还是R语言好,还有一些争论Python好还是R好的文章.每次看到这样的文章我都会想到李舰和肖凯的<数据科学中的R语言>,书中一直强调,工具不 ...

  7. python调用C语言动态链接库详解

    python调用动态链接库详解 Python 调用动态链接库 环境说明 构建动态链接库 python动态链接库基础调用 python动态链接库结构体调用 python动态链接库回调函数 本文介绍在li ...

  8. Python调用C语言(DLL)

    前言:本文可结合Python调用C++语言(DLL)使用,效果更佳. 采用导出形式:__declspec(dllexport) 功能 无参数,无返回类型 有参数,有返回值 [不需要修改参数数值] 有参 ...

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

    学习目标:1.学会C语言写windows下的DLL文件.2.用gcc命令将C程序编译成DLL文件.3.学会用python调用C语言写的DLL. 学习内容1:先用C语言写一个简单程序,先建立dll.c文 ...

最新文章

  1. AAAI 2021最佳论文《Informer》作者:Transformer 最新进展
  2. Spring 3 MVC and XML example
  3. PHP——模糊匹配文件|目录
  4. c语言程序设计第2章,C语言程序设计第2章 结构化程序设计与算法.ppt
  5. 从零开始学前端:表格制作 --- 今天你学习了吗?(CSS:Day04)
  6. 解决修改sources.list之后update NO_PUBKEY错误
  7. Linux中EXPORT_SYMBOL的用法
  8. 腾讯PCG事业部后台实习开发过经(已拿offer)
  9. python编程课件_Python面向对象程序设计ppt课件.ppt
  10. 2022 DSCTF首届数字空间安全攻防大赛 部分题解
  11. 小程序调用服务器图片错误,微信小程序列表图片加载错误处理
  12. JSON树转换成线性列表(python)
  13. leetcode 714 买卖股票的最佳时机含手续费-动态规划(中等)
  14. SUSE配置zypper
  15. 云电视和智能电视是什么,之间有什么区别?
  16. Haskell学习笔记6 - 八道训练题
  17. 《人人都是项目经理V2.0》读书笔记——第3章 需求管理——筛选干系人的需求
  18. PyAutoGUI Doc
  19. 计算机视觉和AI | CV小结 | 附资源分享 | 解读技术
  20. 淘宝30块钱的逻辑分析仪无法安装驱动的解决办法

热门文章

  1. MySQL为其他用户创建数据库_MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限...
  2. struts2下面如何同时使用servlet,就是如何实现struts与servlet共存
  3. 有关Vector里面元素重复解决办法
  4. ERP、CRM、SCM三大系统整合是发展的必然趋势
  5. 简明 XHTML 1.0 参考手册
  6. 必看!互联网开发模式的经验之谈
  7. LInux之建立文件和目录
  8. Servlet的调试
  9. 把一个函数作为参数传入到函数中
  10. APNIC执委赵巍:IPv4向IPv6过渡再无退路