成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#結構體數組間的轉化淺析

開發 后端
C#結構體數組間的轉化問題:在寫C#TCP通信程序時,發送數據時,只能發送byte數組,處理起來比較麻煩,可以按本文介紹的方法實現。

C#結構體數組間的轉化問題:在寫C#TCP通信程序時,發送數據時,只能發送byte數組,處理起來比較麻煩,可以按以下方法實現:

(1)C#結構體數組轉化之定義結構體:

  1. //命名空間  
  2. using System.Runtime.InteropServices;  
  3.  
  4. //注意這個屬性不能少  
  5. [StructLayoutAttribute(  
  6. LayoutKind.Sequential,  
  7. CharSet=CharSet.Ansi,Pack=1)]  
  8. struct TestStruct  
  9. ...{  
  10. public int c;  
  11. //字符串,SizeConst為字符串的***長度  
  12. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)]  
  13. public string str;  
  14. //int數組,SizeConst表示數組的個數,在轉換成  
  15. //byte數組前必須先初始化數組,再使用,初始化  
  16. //的數組長度必須和SizeConst一致,例test = new int[6];  
  17. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)]  
  18. public int[] test;  

(2)C#結構體數組轉化之結構體轉byte數組:

  1. /**//// <summary>  
  2. /// 結構體轉byte數組  
  3. /// </summary>  
  4. /// <param name="structObj">要轉換的結構體</param>  
  5. /// <returns>轉換后的byte數組</returns>  
  6. public static byte[] StructToBytes(object structObj)  
  7. ...{  
  8. //得到結構體的大小  
  9. int size = Marshal.SizeOf(structObj);  
  10. //創建byte數組  
  11. byte[] bytes = new byte[size];  
  12. //分配結構體大小的內存空間  
  13. IntPtr structPtr = Marshal.AllocHGlobal(size);  
  14. //將結構體拷到分配好的內存空間  
  15. Marshal.StructureToPtr(structObj, structPtr, false);  
  16. //從內存空間拷到byte數組  
  17. Marshal.Copy(structPtr, bytes, 0, size);  
  18. //釋放內存空間  
  19. Marshal.FreeHGlobal(structPtr);  
  20. //返回byte數組  
  21. return bytes;  

C#結構體數組轉化的問題就向你介紹到這里,希望對你學習和了解C#結構體數組轉化有所幫助。

【編輯推薦】

  1. C#讀取配置文件詳解
  2. C#讀取Excel的簡單實現
  3. C#讀取Excel數據簡析
  4. C#讀取Excel遇到無法讀取的解決方法
  5. C#結構體的特點淺析
責任編輯:仲衡 來源: 搜狐博客
相關推薦

2009-08-13 13:17:10

C#結構體數組

2009-08-13 13:29:04

C#結構體使用

2009-08-13 11:18:50

C#結構體

2009-08-13 14:56:46

C#的結構體使用

2009-08-27 16:18:47

C#類C#結構體

2009-08-31 15:02:22

C#解析結構體指針

2009-08-13 14:06:37

C#結構體結構體和類的區別

2009-09-23 09:36:34

C#數組

2009-08-26 13:07:07

C#交錯數組

2009-09-02 10:58:02

C#動態數組

2009-08-06 10:14:15

C#引用類型數組

2009-08-07 13:39:13

C#定義整型數組

2009-08-14 11:05:28

C#語言的結構體

2009-08-13 14:46:03

C#結構體定義

2009-09-18 10:58:31

C#數組操作

2009-08-28 14:25:57

C# byte數組

2009-08-13 14:24:44

C#結構體構造函數

2009-08-07 11:26:53

C#數組結構

2009-08-13 15:03:58

C#結構體變量

2009-08-28 14:54:20

C# byte數組
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美国产亚洲一区二区 | 国产精品美女久久久久aⅴ国产馆 | 天堂成人av | 激情 亚洲 | 亚洲成人精品 | 超黄毛片| 久久久精品国产 | 在线观看亚洲精品 | 色接久久 | 三级在线观看 | 欧美激情精品久久久久久变态 | 视频国产一区 | gav成人免费播放视频 | 欧美日韩在线观看视频网站 | 国产视频久 | 国产高清一区二区三区 | 成人在线国产 | 青青草这里只有精品 | 日韩播放 | 秋霞电影院午夜伦 | 成人免费视频网站 | 欧美日韩理论 | a视频在线播放 | 超碰av在线 | 日韩视频中文字幕 | 国产中文字幕在线 | 亚洲一区中文字幕在线观看 | 青青久草 | 久久久久国产一区二区三区 | 精品国产一区二区三区性色 | 天堂在线一区 | 99re在线视频 | 久久国产区 | 日日拍夜夜 | 亚洲国产精品久久久久 | 精品一区二区av | 精品久久精品 | 色欧美片视频在线观看 | 欧美在线观看一区二区 | 亚洲视频1区 | 国产三级 |