OpCodes.Ckfinite 字段

定义

如果值不是有限数,则引发 ArithmeticExceptionThrows ArithmeticException if value is not a finite number.

public: static initonly System::Reflection::Emit::OpCode Ckfinite;
public static readonly System.Reflection.Emit.OpCode Ckfinite;
 staticval mutable Ckfinite : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ckfinite As OpCode 

字段值

OpCode

注解

下表列出了指令的十六进制和 Microsoft 中间语言 (MSIL) 程序集格式,以及简短的参考摘要:The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:

格式Format 程序集格式Assembly Format 说明Description
C3C3 ckfiniteckfinite ArithmeticException如果值不是有限数,则引发。throw ArithmeticException if value is not a finite number.

堆栈转换行为顺序如下:The stack transitional behavior, in sequential order, is:

  1. value 被推送到堆栈上。value is pushed onto the stack.

  2. value 从堆栈中弹出,并对 ckfinite 其执行指令。value is popped from the stack and the ckfinite instruction is performed on it.

  3. value 如果未引发异常,则将被推送回堆栈。value is pushed back onto the stack if no exception is thrown.

ckfinite instruction ArithmeticException 如果 value (浮点数) 为 "不是数字" 值 (NaN) 或无穷值,则会引发 +-The ckfinite instruction throws ArithmeticException if value (a floating-point number) is either a "not a number" value (NaN) or a +- infinity value. Ckfinite 如果没有引发异常,则将值保留在堆栈上。Ckfinite leaves the value on the stack if no exception is thrown. 如果不是浮点数,则不指定执行 valueExecution is unspecified if value is not a floating-point number.

ArithmeticException 如果不是 value "normal" 数字,则会引发。ArithmeticException is thrown if value is not a 'normal' number.

请注意,特殊异常或派生类 ArithmeticException 可能更合适,将错误值传递到异常处理程序。Note that a special exception or a derived class of ArithmeticException may be more appropriate, passing the incorrect value to the exception handler.

以下 Emit 方法重载可以使用 ckfinite 操作码:The following Emit method overload can use the ckfinite opcode:

适用于