我有一个C语言的函数,其定义类似于
uint8 *callme (uint8 a, uint8 b, uint8 c)
在interface.i文件中,我将函数定义为
%module abc
%{
.... C Header files (.h)
%}
extern void uint8 *callme (uint8 a, uint8 b, uint8 c);
我使用生成的.cs文件生成了带有XCode Cocoa touch库和.dll文件的.a文件。
我试图在Xamarin iOS应用程序中使用我的C#代码调用此callme函数。 但我不知道如何将值传递给此函数。每次我收到错误"无法从数据类型转换为abc.SWIGTYPE_p_uint8"
答案 0 :(得分:0)
SWIG创建* SWIGTYPE_p _ **的每种类型都是SWIG无法理解的类型。
您需要查看Typemaps。
您可以在[swig_file] / lib / csharp中找到typemaps.i中的C#类型映射示例。
如果你有一个uint8的正确类型图,你的问题应该得到解决。