OpCodes.Initblk 字段

定义

将位于特定地址的内存的指定块初始化为给定大小和初始值。

C#
public static readonly System.Reflection.Emit.OpCode Initblk;

字段值

注解

下表列出了指令的十六进制和 Microsoft 中间语言 (MSIL) 程序集格式,以及简短的参考摘要:

格式 程序集格式 说明
FE 18 initblk 将内存块中的每个位置设置为给定值。

堆栈过渡行为(按顺序排列)是:

  1. 起始地址将推送到堆栈上。

  2. 初始化值将推送到堆栈上。

  3. 要初始化的字节数将推送到堆栈上。

  4. 从堆栈中弹出字节数、初始化值和起始地址,并根据其值执行初始化。

指令initblk将字节数 () 从类型 、 unsigned int32*) 类型的native int&指定地址 (开始,设置为) 类型的unsigned int8初始化值 (。 initblk 假定起始地址与计算机的自然大小对齐。

指令的操作 initblk 可以通过紧靠前面的 VolatileUnaligned 前缀指令来更改。

NullReferenceException 如果检测到无效的地址,可能会引发 。

以下 Emit 方法重载可以使用 initblk 操作码:

适用于

产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0