如何以十六进制文字/符号正确表示长值“&HFFFF”?

Afr*_*ief 2 vb6 hex

对于,以下代码:

Dim lLength As Long
lLength = 350
If lLength <= &HFFFF Then
    MsgBox "True"
EndIf
Run Code Online (Sandbox Code Playgroud)

lLength <= &HFFFF正在返回False

我的猜测是这&HFFFF被解释为Integer-1,因此该语句的计算结果为False

我也尝试过&H0000FFFF,但是 IDE 删除了前导0000,我也尝试过&HFFFFL这会导致编译错误。

我可以65535在 VB6 中用十六进制文字表示吗?

Mar*_*rkJ 5

尝试将其明确标记为Long带有尾随 & 符号的 a。

&HFFFF& 
Run Code Online (Sandbox Code Playgroud)

&HFFFF不带尾随 & 符号的是Integer文字,Integer在 VB6 中是有符号的 2 字节整数,范围为 -32,768 到 +32,767。