如果c++dll的函数返回值为 数组指针,c#这边我需要怎么定义函数,怎么接收呢?
c++:_declspec (dllexport) float* WINAPI shuju(float pv1[],float pv2[],float pv3[],float pv4[])
c++:_declspec (dllexport) float* WINAPI shuju(float pv1[],float pv2[],float pv3[],float pv4[])
解决方案 »
- C#菜鸟请教大牛们,C#中怎么将不同类型的数据从文件读出来啊,那个占用了多少比特怎么算啊~
- 帮看下正则写对了没,限制小数位数
- 各位大哥大姐们,我是初学.net,想找其他方面的比较好用的控件!
- 关于MSMQ读消息队列的问题
- 关于VS2010 C#读取App.Config的问题
- 调用web Browser装载显示某些页面时报脚本错误......散分求解!
- C#调用dll_forms的全代码。
- 系统工具编程
- 连接informix问题?急!!!知道的帮个忙!谢谢了
- 急判回复,关于c#一个数据库连接打开全局使用的问题????
- winform如何下载FTP上的文件?
- capCreateCaptureWindowA()参数问题
[DllImport("sqlite3.dll", EntryPoint = "sqlite3_open",CallingConvention=CallingConvention.Cdecl)]
public static extern IntPtr shuju(float[] pv1,float[] pv2,float[] pv3,float[] pv4);
console.write(inpre);
好像得出的是八位的地址,我该怎么得出我想要的数值呢?
[DllImport("sqlite3.dll", EntryPoint = "sqlite3_open",CallingConvention=CallingConvention.Cdecl)]
public static extern float[] shuju(float[] pv1,float[] pv2,float[] pv3,float[] pv4);......
float[] fs = shuju(a,b,c,d);
console.write(fs[0]);
console.write(inpre);
好像得出的是八位的地址,我该怎么得出我想要的数值呢?"使用这个:Marshal.Copy 方法 (IntPtr, Single[], Int32, Int32)
将数据从非托管内存指针复制到托管单精度浮点数组。 public static void Copy (
IntPtr source,
float[] destination,
int startIndex,
int length
)
我的问题是,函数返回值是结构体指针,C#这边代码不知道怎么写,加ref提示是不行的,
public static extern ref Struct myfun();
这么写是不行的,求高手指点。