C#指針操作字節數組
Demo(以添加short類型的值為例):
//bytes:目標字節數組; offset:目標在字節數組的位置; value:添加的類型值public static unsafe void WriteInt16ToBytes(byte[] bytes, int offset, short value) { fixed (byte* ptr = bytes) { *((short*)(ptr + offset)) = value; } }
實現思路:
1.創建指向字節數組bytes第一個字節的指針
2.通過增加偏移量offset,找到存放value值的內存區域
3.將該區域轉換為short(兩個字節)大小
4.將value復制到該區域,完成short類型變量向bytes的賦值