将固定在数组中元素的地址引脚整个数组还是仅仅元素?

时间:2013-07-25 09:35:24

标签: c#

例如:

fixed(byte* ptr = &myBuffer[23])
{
    ...
}

我的缓冲区是否会被固定(所以我可以安全地在固定块中进行指针运算,只要我不超过数组的长度)或者仅将索引23处的字节固定?

1 个答案:

答案 0 :(得分:2)

从C#语言规范5.0版开始,第18.6节:

  

例如,如果fixed-pointer-initializer计算的地址引用了对象的字段或数组实例的元素,则fixed语句保证包含对象实例的 未在声明的有效期内重新定位或处置

我的重点

(通过查看MSDN上的fixed statement指出了