n=1000,mid(n,1,1)为什么不是1而是0啊!

来源:百度知道 编辑:UC知道 时间:2024/05/08 06:32:28
n=1000
a = Val(Mid(Str(n), 1, 1))
b = Val(Mid(Str(n), 2, 1))
c = Val(Mid(Str(n), 3, 1))
d = Val(Mid(Str(n), 4, 1))

最后显示的是 a=0,b=1,c=0,c=0
为什么啊?!

Str 函数来将一个数字转成字符串。当数字转成字符串时,字符串的第一个位一定是空格或是正负号。

Dim MyString
MyString = Str(459) ' 返回 " 459"。
MyString = Str(-459.65) ' 返回 "-459.65"。
MyString = Str(459.001) ' 返回 " 459.001"。

你可用Cstr(),会是你想要的结果

因为你用str将N转换为字符型 第一位为符号位 所以不是1而是0