
正文
关于vb.nethex()的信息
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
VB的中HEX函数
汉字“人”的asc码是一个大于32767的值,所以用integer返回就是一个负数:-14133
C8CB是一个十六进制的补码,补码的意思就是高字节如果为1,那么就是负数。
根据integer的范围:-14133,其实对应的是 -14133 + 65536 = 51403 = C8CB,正好就是那个hex返回的数值,所以,这两个值是一样的。
如果不理解,看看补码的概念吧,是二进制上的一个概念。
Asc 函数
返回一个 Integer,代表字符串中首字母的字符代码。
语法
Asc(string)
必要的 string 参数可以是任何有效的字符串表达式。如果 string 中没有包含任何字符,则会产生运行时错误。
说明
在非 DBCS 系统下,返回值范围为 0 – 255 。在 DBCS 系统下,则为 -32768 – 32767。
注意 AscB 函数作用于包含在字符串中的字节数据,AscB 返回第一个字节的字符代码,而非字符的字符代码。AscW 函数返回 Unicode 字符代码,若平台不支持 Unicode,则与 Asc 函数功能相同。
-----------------------------------------------
Hex 函数
返回代表十六进制数值的 String。
语法
Hex(number)
必要的 number 参数为任何有效的数值表达式或字符串表达式。
说明
如果 number 还不是一个整数,那么在执行前会先被四舍五入成最接近的整数。
如果 number 为 所得为
Null Null
Empty 零 (0)
任何其他的数字 最多可到八个十六进制字符。
适当范围内的数字,前缀以 H,可以直接表示十六进制数字。例如,十六进制表示法的 H10 代表十进制的 16。
相关问答
Q1: VB中的hex函数在C#中怎么描述
Hex 函数可以将一个数值转换为16进制vb.nethex()的字符串String类型。
语法vb.nethex():Hex(number)
实例vb.nethex():
1
2
3
4
Msgbox Hex(3) '3
Msgbox Hex(10) 'A
Msgbox Hex(123) '7B
Msgbox Hex(H123) '123
Q2: VB.NET,八/十六进制转十进制的函数
VB.Net自带函数vb.nethex():
十进制转八进制vb.nethex():Oct(num)
十六进制转八进制vb.nethex():oct("H" num)
十进制转十六进制vb.nethex():hex(num)
八进制转十六进制vb.nethex():hex("O" num)
十六进制转换为十进制:CLng("H" num)
Q3: VB.NET ASCLL码转换问题
Dim A As String
A = "10101011"
MsgBox(Hex(Convert.ToSByte(Microsoft.VisualBasic.Left(A, 4), 2)) Hex(Convert.ToSByte(Microsoft.VisualBasic.Right(A, 4), 2)))
Q4: VB奇怪的问题:引用函数Hex()时自动变小写hex(),运行后hex()不可用,有知道原因的吗?
估计是你的代码里重新定义了函数hex,而VB会优先调用自定义函数hex,这样的话VB本身的内部函数Hex就会失效了。解决办法有两种:
1、在你的整个工程的所有代码(包括窗体和模块)中查找hex,找到自定义的hex函数,把它删除或改名(建议后者,除非你这个函数是没什么作用的),这样VB内部函数Hex就可以使用了;
2、指定Hex的父对象(VBA),也可以让VB强行调用其内部函数而不是自定义函数,比如:
b = Hex(a)
改为
b = VBA.Hex(a)
vb.nethex()的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、vb.nethex()的信息别忘了在本站进行查找喔。







