VB中VAL的问题

学习的过程中遇到一个问题。符号函数sgn(x)定义如下sgn(x)=1,x>0sgn(x)=0,x=0sgn(x)=-1,x<0编程中有一步骤X=Val(text1.te... 学习的过程中遇到一个问题。
符号函数sgn(x)定义如下
sgn(x) = 1 , x>0
sgn(x) = 0 , x=0
sgn(x) = -1 , x<0
编程中有一步骤 X=Val(text1.text) 这里Val是为了把字符串变成数值

但是之前我做了一道题,输入3个数,求最大值的题。
Dim a as single,b as single ,c as single,max as single

a=text1.text
b=text2.text
这里面比大小不也应该是把字符串变成数值吗?为什么不是啊?
展开
 我来答
听不清啊
高粉答主

2014-12-16 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部

这是利用了VB自动完成某些数据的类型转换。

隐式类型转换也被称为自动类型转换,是指不需要程序员书写代码,由编程语言自动完成的类型转换。 

例如:

Dim x as Double

x = 1234

还有就是你的例子:

Dim a as single,b as single
a=Text1.text
b=Text2.text

苏秀梅祁香
2020-01-05 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:31%
帮助的人:676万
展开全部
1、val函数
val函数是把一个数据转换成纯数值型的。解释一下:在程序运行时,会产生很多数据,而要处理这些数据,需要用到数据处理函数(+、-、*、/都是哦),这些数据处理函数通常只针对数值型的数据,对字符型的数据(就是除了阿拉伯数字其余的所有文字都是字符型)无法处理,在运行中就会出现令人啼笑皆非的错误(记得我在我们班里的那次失败的演示吗?那时我没有用val函数处理数据,所以在加法那里如果两个文本框一个输入“苏津岳”另一个输入“大天才”,加法的结果就是“苏津岳是大天才”),所以大家要尽量使用val函数!但是val也不是哪里都能用的,如果你要处理一篇文章而你用了val函数,那么文章的内容就是:0(val函数在遇到非数字时会自动转换为0)。val的使用方法:a
(变量名)
=
(赋值号)
val
(数值型转换函数)(b)
b
为另一变量(当然也可以是所有的有储存数据的东西,比如text1.text
括号里的东西是为了解释,为了让大家看得更清楚,我再写一遍(不带解释括号)
a
=
val(text1.text)
或者
a
=
val
(
b
)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
哀杰藏香卉
2020-03-08 · TA获得超过4037个赞
知道大有可为答主
回答量:3132
采纳率:30%
帮助的人:464万
展开全部
这个用TEXT的KeyPress事件解决
如果你的文本框叫TEXT1
添加以下代码
Private
Sub
txt_Text1_KeyPress(KeyAscii
As
Integer)
If
(KeyAscii
<
45
And
KeyAscii
<>
8)
Or
KeyAscii
=
47
Or
KeyAscii
>
57
Then
KeyAscii
=
0
MsgBox
"只能输入纯数字及小数点和负号"
End
If
End
Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-12-16
展开全部
按理来说也必须先装换为数字,不然但你输入的不是数字时就会出现运行错误,类型不匹配。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式