请教VB中if 语句的一个问题

来源:百度知道 编辑:UC知道 时间:2024/06/27 23:47:14
Private Sub Form_Click()
Dim x
If x Then
Print x
Else
Print x + 1
End If
End Sub

这个为什么答案是 1

Private Sub Form_Click()
    Dim x
    '此时,虽然没有给X赋初值,但系统已经把它的值设为0
    If x Then  '非0为真,0为假
        Print x
    Else
        'x=0,所以执行到这里,此时x+1=1
        Print x + 1
    End If
End Sub

Dim x
此时 x 是一个 Variant 类型,初值为 Null。

NULL 使用 If 判断,结果为否

x + 1 首先将执行 CLng(x) = 0 得到 0结果。然后+1执行结果为 1。