• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

c#结构体中的结构体数组应该如何定义与初始化赋值(转)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 

https://bbs.csdn.net/topics/390508323/

 

你可以打印出C++的结构体
我打个比方
C++结构体

 public int X
 public long Y
 public String xxx
 public bool aa

这样的结构 在内存中
他是 
int 对应的是4个byte
long 对应的是8个byte
string 两种可能(字符长度+ string->Byte,另一种是 string->byte + \0 这是常见的一种)
bool 1个byte

所以结构变Byte[]就是 4+8+((string->Byte).Length +1) + 1
然后就把这个Byte直接发给C++服务端,就会认的出来了

所以我之前跟你提的先看看C++的结构体转成Byte是什么样的打印出来。,int long bool 都是一样的。
然后由C#自己用Byte组合,结构套结构 在C++里他们内存里的数据都是连继的会放在一起,C#是引用类型,
所以你得出的数据就不是你要的结果了。

 

所有的char数组都要补齐


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Telnet基本概念及C#Telnet客户端程序发布时间:2022-07-10
下一篇:
【C#】透屏幕,屏幕扩展发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap