社区
C#
帖子详情
C#向C++写的DLL传递结构体的问题
maggice
2010-07-16 11:35:04
C++代码:
struct a
{
int x;
b y[10];
c z[10];//b,c都是下面定义的结构体
}
struct b
{
int aa;
int bb;
}
struct c
{
float cc;
double dd;
}
导出函数:
int GetInfo(a* pINFO)
C#里面该怎么定义结构体a,并调用函数GetInfo,读取pInfo地址里的值?烦恼了一天,也没找出好的解决办法,请大家帮帮忙,谢谢
...全文
86
8
打赏
收藏
C#向C++写的DLL传递结构体的问题
C++代码: struct a { int x; b y[10]; c z[10];//b,c都是下面定义的结构体 } struct b { int aa; int bb; } struct c { float cc; double dd; } 导出函数: int GetInfo(a* pINFO) C#里面该怎么定义结构体a,并调用函数GetInfo,读取pInfo地址里的值?烦恼了一天,也没找出好的解决办法,请大家帮帮忙,谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
maggice
2010-07-22
打赏
举报
回复
没有高手来指点一下吗,谢谢了
maggice
2010-07-20
打赏
举报
回复
[StructLayout(LayoutKind.Sequential)]
struct a
{
int x;
b[] y;
c[] z;//b,c都是下面定义的结构体
}
这里面的y和z都是数组,不用特殊说明吗?
我记得连int数组都要向下面这样定义
[MarshalAs(UnmanagedType.ByValArray, sizeConst = 6)]
public int[] test;
tjpu_hxy
2010-07-18
打赏
举报
回复
当然可以
maggice
2010-07-18
打赏
举报
回复
我想知道的是,我在C#中是否一样可以嵌套定义结构体,我在C#中如果同样定义下面的结构体是否能跟C++的对应上。
[StructLayout(LayoutKind.Sequential)]
struct a
{
int x;
b y[10];
c z[10];//b,c都是下面定义的结构体
}
[StructLayout(LayoutKind.Sequential)]
struct b
{
int aa;
int bb;
}
[StructLayout(LayoutKind.Sequential)]
struct c
{
float cc;
double dd;
}
请叫我卷福
2010-07-17
打赏
举报
回复
C#调用C中的函数
相应参数(结构体)需要自己重新定义
char[] 对应 string
int 对应 int32
long 对应int64
指针 对应 intptr
。。。。。
导入C函数
[Dllimport("你的dll.dll")]
public static extern int GetInfo(ref yourStruct info);
结构体定义
[StructLayout(LayoutKind.Sequential)]
struct yourStruct
{
//成员定义。。。。要跟C中对应。。。
}
peteronly
2010-07-16
打赏
举报
回复
额,结构体?貌似是C里的?
兔子-顾问
2010-07-16
打赏
举报
回复
[System.Runtime.InteropServices.StructLayout( System.Runtime.InteropServices.LayoutKind.Explicit)]
属性。具体的这个要测试才能知道对不对。只给你个方向。懒得弄vc项目测试了。
兔子-顾问
2010-07-16
打赏
举报
回复
int GetInfo(ref a pINFO)
这样行不?
或是看看
C#
调用
C++
Dll
关于
结构体
数组引用的
传递
及解析使用的展示代码
资源代码演示的是
c#
代码调用
c++
DLL
的方式。该演示为原创,绝非搬砖。解决了
c#
调用
C++
Dll
获取相关信息之如何
传递
结构体
数组引用以及如何处理获取到的
结构体
数组数据的
问题
。
C#
调用
C++
DLL
传递
结构体
数组的终极解决方案
主要介绍了
C#
调用
C++
DLL
传递
结构体
数组的终极解决方案的相关资料,需要的朋友可以参考下
青少年
C++
编程NOIP/CSP竞赛通关语法-
结构体
1、本课程为零基础
C++
语法专题课,是青少儿参加信息学奥赛NOIP/CSP需要学习的语法专题课; 2、本课程每节课均配有练习题以及真题,以锻炼孩子的解题能力; 3、本课程是基于小学生的认知发展水平开发的,运用孩子生活...
C#
调用
C++
封装成
DLL
的
结构体
及类库.rar
C#
调用
C++
封装成
DLL
的
结构体
及类库, 使用数据结构类型, 使用动态库调用方式,函数入参为
结构体
,返回参数为
结构体
,使用out,ref 传统参数
C#
调用
C++
生成的
DLL
,并返回
结构体
引用或者
结构体
指针多个值
C#
调用
C++
生成的
DLL
,并返回
结构体
引用或者
结构体
指针多个值,工程已编译好
C#
110,536
社区成员
642,578
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章