zoukankan      html  css  js  c++  java
  • c#结构体中的结构体数组应该如何定义与初始化赋值(转)

    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 +  这是常见的一种)
    bool 1个byte

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

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

    所有的char数组都要补齐

  • 相关阅读:
    PHP之目录遍历
    PHP之验证码
    PHP之验证码
    PHP之异常处理模式
    PHP之pdo的预处理模式
    PHP之PDO
    PHP之cookie和session
    PHP之MVC
    单例模式
    ThreadLocal
  • 原文地址:https://www.cnblogs.com/xihong2014/p/12589866.html
Copyright © 2011-2022 走看看