获取 Cython 指针的值

2023-11-24

我正在编写一个构造 malloc 的函数unsigned char *数组,然后返回指针。在纯 Cython 或 C 中,这很容易。您所要做的就是在函数上设置返回类型,然后返回指向数组的指针。完毕。但是,我已经达到了需要将指向在 Cython 中创建的数组的指针返回到 Python 的地步。我知道指针就是内存地址。有什么方法可以将 Cython 指针作为 python 对象返回到 Python(例如 int 或 hex,因为内存地址本质上是一个数字),这样我就可以基本上管理 python 中的指针?

我尝试像这样返回指针的值:

cdef unsigned char array[8]

def return_pointer():
    return &array

这当然行不通,因为转换无法完成。 Cython 抱怨Cannot convert 'unsigned char (*)[8]' to Python object。有什么建议么?

EDIT:

我不需要访问Python中指针引用的内存地址中的值,只需传递指针即可。然后我计划使用 Python 对象指针,并用它作为参数调用 c 函数。


您可以将指针强制转换为适当的 C 类型,然后由 Cython 将其转换为 Python 整数。正确的 C 类型是uintptr_t from <stddef.h>在 Cython 中可以通过以下方式获得from libc.stdint cimport uintptr_t。演员阵容当然是写好的<uintptr_t>array_or_pointer.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取 Cython 指针的值 的相关文章

  • 在 C 中初始化变量

    我知道有时如果你不初始化int 如果打印整数 您将得到一个随机数 但将所有内容初始化为零似乎有点愚蠢 我问这个问题是因为我正在评论我的 C 项目 而且我对缩进非常直接 并且它可以完全编译 90 90 谢谢 Stackoverflow 但我想
  • 如何将 ascii 值列表转换为 python 中的字符串?

    我在 Python 程序中有一个列表 其中包含一系列数字 这些数字本身就是 ASCII 值 如何将其转换为可以在屏幕上回显的 常规 字符串 您可能正在寻找 chr gt gt gt L 104 101 108 108 111 44 32 1
  • 为什么调用非 const 成员函数而不是 const 成员函数?

    为了我的目的 我尝试包装一些类似于 Qt 共享数据指针的东西 经过测试 我发现当应该调用 const 函数时 会选择它的非 const 版本 我正在使用 C 0x 选项进行编译 这是一个最小的代码 struct Data int x con
  • 从 Linux 内核模块中调用用户空间函数

    我正在编写一个简单的 Linux 字符设备驱动程序 以通过 I O 端口将数据输出到硬件 我有一个执行浮点运算的函数来计算硬件的正确输出 不幸的是 这意味着我需要将此函数保留在用户空间中 因为 Linux 内核不能很好地处理浮点运算 这是设
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数
  • Protobuf 如何编码 oneof 消息结构

    对于这个 python 程序 在编码时运行 protobuf 编码会给出以下输出 0a 10 08 7f8a 0104 08 02 10 0392 0104 08 02 10 03 18 01 我不明白的是为什么8a后面有一个01 为什么9
  • C#:帮助理解 UML 类图中的 <>

    我目前正在做一个项目 我们必须从 UML 图编写代码 我了解 UML 类图的剖析 但我无法理解什么 lt
  • Azure 辅助角色“请求输入之一超出范围”的内部异常。

    我在辅助角色中调用 CloudTableClient CreateTableIfNotExist 方法 但收到一个异常 其中包含 请求输入之一超出范围 的内部异常 我做了一些研究 发现这是由于将表命名为非法表名引起的 但是 我尝试为我的表命
  • 如何禁用 fread() 中的缓冲?

    我正在使用 fread 和 fwrite 读取和写入套接字 我相信这些函数用于缓冲输入和输出 有什么方法可以在仍然使用这些功能的同时禁用缓冲吗 Edit 我正在构建一个远程桌面应用程序 远程客户端似乎 落后于服务器 我不知道可能是什么原因
  • C# 中的合并运算符?

    我想我记得看到过类似的东西 三元运算符 http msdn microsoft com en us library ty67wk28 28VS 80 29 aspx在 C 中 它只有两部分 如果变量值不为空 则返回变量值 如果为空 则返回默
  • python 中的“槽包装器”是什么?

    object dict 和其他地方的隐藏方法设置为这样的
  • 如何以正确的方式为独立的Python应用程序制作setup.py?

    我读过几个类似的主题 但还没有成功 我觉得我错过或误解了一些基本的事情 这就是我失败的原因 我有一个用 python 编写的 应用程序 我想在标准 setup py 的帮助下进行部署 由于功能复杂 它由不同的 python 模块组成 但单独
  • 动态添加 ASP.Net 控件

    我有一个存储过程 它根据数据库中存储的记录数返回多行 现在我想有一种方法来创建 div 带有包含该行值的控件的标记 如果从数据库返回 10 行 则 10 div 必须创建标签 我有下面的代码来从数据库中获取结果 但我不知道如何从这里继续 S
  • Firebase Firestore:获取文档的生成 ID (Python)

    我可以创建一个新文档 带有自动生成的 ID 并存储对其的引用 如下所示 my data key value doc ref db collection u campaigns add my data 我可以像这样访问数据本身 print d
  • 如何在非控制台应用程序中查看 cout 输出?

    输出到调试窗口似乎相当繁琐 我在哪里可以找到cout如果我正在编写非控制台信息 则输出 Like double i a b cout lt lt b lt lt endl I want to check out whether b is z
  • python 对浮点数进行不正确的舍入

    gt gt gt a 0 3135 gt gt gt print 3f a 0 314 gt gt gt a 0 3125 gt gt gt print 3f a 0 312 gt gt gt 我期待 0 313 而不是 0 312 有没有
  • 无法接收 UDP Windows RT

    我正在为 Windows 8 RT 编写一个 Windows Store Metro Modern RT 应用程序 需要在端口 49030 上接收 UDP 数据包 但我似乎无法接收任何数据包 我已按照使用教程进行操作DatagramSock
  • 从列表中选择项目以求和

    我有一个包含数值的项目列表 我需要使用这些项目求和 我需要你的帮助来构建这样的算法 下面是一个用 C 编写的示例 描述了我的问题 int sum 21 List
  • 如何将 PostgreSql 与 EntityFramework 6.0.2 集成? [复制]

    这个问题在这里已经有答案了 我收到以下错误 实体框架提供程序类型的 实例 成员 Npgsql NpgsqlServices Npgsql 版本 2 0 14 2 文化 中性 PublicKeyToken 5d8b90d52f46fda7 没
  • 当我使用 OpenSSL1.1.0g 根据固定的 p 和 g 值创建 Diffie Hellman 密钥协议密钥时,应该执行哪些检查?

    您好 我尝试通过这段代码使用修复 p 和 g 参数来制作 Diffie Hellman Keysanswer https stackoverflow com a 54538811 4706711 include

随机推荐

  • git 归档来自远程的特定哈希

    我正在尝试从一个远程存储库获取一个目录 但我只想从特定的哈希中获取该文件 如果我使用带有 HEAD 的 git archive 一切正常 但是当我尝试使用特定的哈希时 git archive v format tar remote ssh
  • AngularJS:如何从window.history中删除当前视图url?

    I have load data使用微调器查看 数据加载完成后控制器重定向到不同的视图 location path show info 如何从历史记录中删除 load data 以避免window history back 到 load d
  • 如何通过一键登录流程使用适用于 JavaScript 的 Google API 客户端?

    我在用着Google 一键登录对用户进行身份验证 在用户通过身份验证后 我会获得访问令牌 我知道我可以使用此访问令牌来使用JavaScript 的 Google API 客户端 GAPI 但我找不到任何使用此访问令牌来使用 GAPI 的方法
  • Google Play 拒绝应用程序,因为它正在上传用户的联系信息

    由于以下原因 该应用程序已从 Google Play 商店中删除 APK 有显着的披露 但披露不充分您的应用正在上传用户的Contact信息至https domen com没有充分披露 由于应用程序是国际电话应用程序 我们使用了很多权限
  • 互斥锁和解锁函数如何防止 CPU 重新排序?

    据我所知 函数调用充当编译器屏障 但不充当 CPU 屏障 This tutorial说如下 获取锁意味着获取语义 而释放锁 意味着释放语义 其间的所有内存操作都是 包含在一个漂亮的小屏障三明治内 防止任何 跨边界的不良内存重新排序 我假设上
  • devtools roxygen 包创建和 rd 文档

    我是 roxygen 的新手 正在努力了解如何使用它来快速创建新的 自定义的包 IE 我想知道最低要求是制作一个名为package1 using devtools roxygen2 3这样我就可以运行命令 require package1
  • 根据特定类别获取所有标签(包括子类别和帖子中的所有标签)wordpress

    我想在 single php 上使用 wp tag cloud 使用从特定类别获取所有标签的参数 包括来自其子类别和帖子的所有标签 Wordpress 中没有本地方法可以做到这一点 原因是标签与类别无关 它们是独立的 话虽如此 获取特定类别
  • 从 iPhone 应用程序购买实体产品,无需 Apple 在应用程序内购买

    iPhone 应用程序是否可以允许用户从应用程序内部购买实体产品 例如笔或鼠标 而无需在应用程序购买中使用 Apple 苹果允许吗 如果是的话 你知道有什么API支持这个吗 谢谢 阿杰 您不得使用 应用内购买 销售实体商品或服务 因为通过此
  • DatePicker 看起来也像新 API 上的旧设计

    所以问题很简单 我集成了一个DatePicker在我的应用程序中 不作为DialogDatePicker但作为一个 View 组件 更准确地说是一个View里面的一个Fragment动态显示并从FrameLayout包含在我的主要Fragm
  • XML XSD 模式验证工具[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 有人知道使用 XSD 模式验证 XML 的命令行工具吗 xmllint 来自Libxml项目 xmllint schema schema xsd d
  • recyclerview 中的倒计时器无法正常工作

    我创建了一个包含多个数据和一个倒计时器的回收视图 所有的事情都工作正常 直到我无法滚动列表 当我向下滚动列表时 倒计时器将与上面的视图项目冲突 它也计算当前观看时间和随机时间 我尝试了太多的方法来解决它 但无法解决 请帮帮我 提前致谢 这是
  • 为什么我无法克隆我作为协作者的私有存储库

    我是一个私人 github 存储库的合作者 我可以分叉它 但是当我尝试将它克隆到我的系统上时 它会显示一个弹出框 要求提供凭据 即使我输入正确的凭据 我也无法登录 是只有我一个人还是 github 实际上不允许克隆私人仓库 即使我是其中的合
  • 在 Windows 上启动 Git Bash 时运行 SSH 代理

    我正在使用 git bash 我必须使用 eval ssh agent exe ssh add my ssh location 每次当我开始一个新的 git bash 时 有没有办法永久设置ssh代理 或者windows有什么好的办法吗 管
  • 对字符串的迭代器进行排序

    我有一个字符串迭代器 为了排序 我需要从中创建一个列表并使用它对其进行排序Collections sort list 有没有简单的方法来对迭代器进行排序 迭代器不是容器 它是遍历容器元素的实用程序 因此 如果您只能访问迭代器 则无法更改由该
  • 从字符串中分离出整数

    假设我有一个网页 当前通过 url 参数接受单个 ID 值 http example com mypage aspx ID 1234 我想改变它以接受listid 像这样 http example com mypage aspx IDs 1
  • Spring Data JPA 调用 Oracle 函数

    我正在运行一个简单的应用程序 它使用 Spring Boot Spring Data JPA 来实现持久性 下面是一个示例 Oracle 函数 我希望在服务实现类中返回值 CREATE OR REPLACE PACKAGE PKG TEST
  • 我正在尝试计算 txt 文件中的所有字母,然后按降序显示

    正如标题所说 到目前为止 这就是我的代码确实可以工作的地方 但是我无法按顺序显示信息 目前它只是随机显示信息 def frequencies filename infile open filename r wordcount content
  • 使用 matplotlib 绘制 PNG 文件时反转颜色

    I m trying to display a PNG file using matplotlib and of course python For this test I ve generated the following image
  • 使用 fetch 时文本响应为空

    以下代码 fetch http localhost 8080 root 1487171054127 k query bearer token mode no cors credentials include then function re
  • 获取 Cython 指针的值

    我正在编写一个构造 malloc 的函数unsigned char 数组 然后返回指针 在纯 Cython 或 C 中 这很容易 您所要做的就是在函数上设置返回类型 然后返回指向数组的指针 完毕 但是 我已经达到了需要将指向在 Cython