19.6.39. ElseIf(替代/条件执行)
语法 :
ElseIf ( Predicate ) {TermList}
参数
Predicate 按 Integer 求值。
说明
如果任何 ElseIf 语句的 Predicate 求值为非零,则执行其术语列表中的语句,然后控制将转移到最终 Else 的末尾之后。如果没有任何 Predicate 求值为非零,则执行 Else 术语列表中的语句。
注意
兼容性说明: ElseIf 运算符最早在 ACPI 2.0 中引入,但与 ACPI 1.0 规范向后兼容。ACPI 2.0 及更高版本的 ASL 编译器必须使用 1.0 中可用的 If 和 Else 操作码来合成 ElseIf。例如:
If (predicate1)
{
...statements1...
}
ElseIf (predicate2)
{
...statements2...
}
Else
{
...statements3...
}
会被转换为以下形式:
If (predicate1)
{
...statements1...
}
Else
{
If (predicate2)
{
...statements2...
}
Else
{
...statements3...
}
}