Futurebasic/语言/参考/hexstring
外观
hexString$ = HEX$(<i>expr)
此函数返回一个十六进制数字字符串,该字符串表示expr
的整数值。返回的字符串将包含 2、4 或 8 个字符,具体取决于当前有效的DEFSTR BYTE
、DEFSTR WORD
或 DEFSTR LONG
。请注意,如果expr
的值过大,无法容纳在当前选择的大小为十六进制字符串中,则HEX$
返回的字符串将不表示expr
的真实值。
在 FB 中,整数以标准的“二进制补码”格式存储,HEX$
返回的值反映了这种存储方案。在解释HEX$
的结果时,您需要牢记这一点,尤其是在expr
为负数时。例如:当DEFSTR BYTE
有效时,HEX$(-3)
返回 "FD
";当DEFSTR WORD
有效时,返回 "FFFD
";当DEFSTR LONG
有效时,返回 "FFFFFFFD
"。
注意:要将十六进制数字字符串转换为整数,请使用以下技术
intVar = VAL&("&H" + hexString$)
intVar
可以是(带符号或无符号)字节变量、短整型变量或长整型变量。字节变量可以处理长度不超过 2 个字符的hexString$
;短整型变量可以处理长度不超过 4 个字符的hexString$
;长整型变量可以处理长度不超过 8 个字符的hexString$
。
; BIN$; DEF STRBYTE/WORD/LONG; VAL