在VB语言中,val函数可以把数值字符串==转为==>数值的函数,在它不能识别为数字的第一个字符上,停止读入字符串。
那些被认为是数值的一部分的符号和字符,例如美元号与逗号,都不能被识别。但是能够识别数字中的小数点
但是函数可以识别进位制符号 &O(八进制)和 &H(十六进制)。空白、制表符和换行符都从参数中被去掉。
Val是类型转换函数:Val(字符串表达式)将数字字符串换成数值,使用方法如下:
==================================================================
Val("QQ5201351")返回0 Val("520.1351 ABC")返回520.1351
Val("520 ab 1351")返回520 Val("aabbccddeeffgg")返回0
Val("&O 10)返回8 Val("&HFFFF)反回-1
=====================================================
其中笔者一直对Val("&HFFFF)反回-1,一直很不解,后来个人的分析是这样的、vb6默认&HFFFF视为有符号的Integer型,其中
16进制的0000----7fff 对应十进制的 0----32767 (一共32768个数)
16进制的8000----ffff 对应十进制的-32768 ---- -1 (一共32768个数)
而当十六进制的值大于FFFF的时候,也把其视作为有符号的Long长整型,如Val("&H7FFFFFFF")则返回2147483647
尊重别人的劳动成果 转载请务必注明出处:http://www.cnblogs.com/5201351/p/5051971.html