ffi

    0热度

    1回答

    球拍FFI的文档包含_ptr,_cpointer和_pointer的类型。 但是,文档(写这个问题时)似乎没有比较三种不同的类型。显然,前两项是产生ctype?的函数,其中最后一项是ctype?本身。但是,我什么时候会用另一种类型? 它也有其它类型的诸如_box,_list,_gcpointer,和_cpointer/null。这些都是这三种功能的变种。

    2热度

    1回答

    我有一个在中间具有两个字段描述列表的大小和一个指向列表中的大cstruct: (define-cstruct _context (... [size _uint] [lst _pointer] ...) 然而,要获得这个名单,我总是首先需要抓取大小,然后将指针转换为给定大小的列表。显然我可以做一个功能来做到这一点: (define (convert-to

    2热度

    1回答

    我不能确定这个代码的崩溃的原因: #define MACOSX #include <assert.h> #include <stdint.h> #include <stdio.h> #include <ffi/ffi.h> void sum(int64_t *a, int64_t *b, int64_t *c) { *c = *a + *b; } int main()

    2热度

    1回答

    (X)功能,当我把这个在python from pyswip import * read = Functor("read",1) X=Variable() call(read(X)) 的响应是一个序言壳 |: 如何使代替的raw_input的序言的壳呢? 感谢

    2热度

    2回答

    我正在为Rust编写一个FFI包装。我看到libc::c_char和std::os::raw::c_char的用法。我对C的知识非常少,我想知道是否有任何区别。如果我想通过cffi向Python公开一个字符串,应该使用什么?

    0热度

    1回答

    我希望使用Crystal调用Rust dylib中定义的各种函数。我已经阅读了手册,但我无法理解它。我如何正确包含并调用这个dylib?我使用CLI标志是否错误? 这里的水晶代码: @[Link("libmy_dylib")] lib MyDylib # In C: double cos(double x) # In Rust: print_number(x:i32)

    0热度

    1回答

    使用球拍的FFI声明功能足够简单,可以使用_fun和define-ffi-definer。 (A教程可以在the PRL blog找到)。例如,我可以为atoi绑定: #lang racket (require ffi/unsafe ffi/unsafe/define) (define-ffi-definer define-libC#f) (define-libc atoi (_

    1热度

    1回答

    全部, 我正在为嵌入式系统开发一个新的C++项目。系统的一部分是一些遗留的Python代码,我们也需要进行接口。我已经使用Python提供的各种PyImport_ImportModule函数等将C++原型化为Python接口,并在我的主机系统(Ubuntu 64位17.04)上对其进行了测试。 但是,新项目中的构建系统也尝试构建所有依赖项,因此它从源代码构建Python 2.7.13。我看到的问题

    5热度

    1回答

    我试过阅读各种github问题,试图找出差异是什么,只是结束了困惑。 #[no_mangle] pub extern fn foo() { ... } 与 #[no_mangle] pub extern "C" fn foo() { ... }

    0热度

    1回答

    我已经基本上挖掘了所有朱莉娅文档,但我无法找到任何答案。我的问题可以分为两部分。代码片段忽略像基本的初始化那样的东西。 第1部分:如何通过基本的复杂类型,而jl_eval_string() 假设我有它调用一些朱莉娅脚本,对于一个功能f它做一些String操纵C/C++程序。在C源代码中: char* parameter_string; // Initialized as something. j