当前位置: 代码迷 >> C# >> C# 中byte* 怎么进行 + 运算
  详细解决方案

C# 中byte* 怎么进行 + 运算

热度:8615   发布时间:2013-02-25 00:00:00.0
C# 中byte* 如何进行 + 运算
fixed (byte* numRef = this._castedRefStream.GetBuffer())
            {
                byte* pointer = numRef + ((byte*)position);
                local.CastStructure(pointer);
            }

红色代码行出错,
错误 113 运算符“+”无法应用于“byte*”和“byte*”类型的操作数
c# byte*

------解决方案--------------------------------------------------------
改为:

byte* pointer = numRef + position;

------解决方案--------------------------------------------------------
偏移量只能是整形,或者:

byte* pointer = numRef + (int)position;
------解决方案--------------------------------------------------------
指针不能和指针相加,指针可以和整形相加

byte* pointer = numRef + position;

不过这种代码还是不要用C#写,换C++更好
  相关解决方案