Swig Python - C++ 如何使用 int8_t 类型

21

我有一个C函数,它的参数是一个8位整数。

int8_t foo( int8_t x );
我想使用 SWIG 接口从我的 Python 代码中调用此函数,但在 Python 中不存在 int8_t 类型。 为了存在这种类型,有一个名为 numpy 的 Python 模块。 即使使用这个,我也无法让它们通信。 您知道是否有一种方法可以在 SWIG 接口中定义这样的类型以便能够从 Python 中使用吗? int8_t 只是一个示例...我必须对 8 到 64 位的 signed/unsigned 做同样的事情。 提前感谢, S。
1个回答

38

在你的 SWIG 接口文件中使用:

%include "stdint.i"

您首次使用uint8_t之前,请先定义它。然后SWIG将为您应用适当的类型映射。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接