C# 使用指针将不同值类型赋值到字节数组中
Posted yyjackma
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 使用指针将不同值类型赋值到字节数组中相关的知识,希望对你有一定的参考价值。
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的赋值
以上是关于C# 使用指针将不同值类型赋值到字节数组中的主要内容,如果未能解决你的问题,请参考以下文章
将字节数组从 c++ 传递到 c# 程序集都有哪些不同的方法?