读书人

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

发布时间: 2013-02-24 17:58:57 作者: rapoo

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++更好

读书人网 >C#

热点推荐