为什么VB中 3<=x<10得知永远是True?求详细解释~
答案:5 悬赏:60 手机版
解决时间 2021-04-06 07:12
- 提问者网友:心如荒岛囚我终老
- 2021-04-06 02:25
为什么VB中 3<=x<10得知永远是True?求详细解释~
最佳答案
- 五星知识达人网友:渡鹤影
- 2021-04-06 02:38
1,表达式3 <= x < 10,是一个含有两个关系运算的表达式,其中运算符号“<=”和“<”都是关系运算符号,而关系运算符号是同一个运算优先级别的,也就是说先运算左边的“<=”后运算右边的“<”。
2,先来看运算 3 <= x的结果,可以知道无非是True或False两种情况之一。
3,对于进行:True < 10或False < 10,VB会把True或False转换成整数后再进行运算,
VB把True转换成 -1,VB把False转换成 0。
所以这个表达式的结果无论X为何值,都为True。
2,先来看运算 3 <= x的结果,可以知道无非是True或False两种情况之一。
3,对于进行:True < 10或False < 10,VB会把True或False转换成整数后再进行运算,
VB把True转换成 -1,VB把False转换成 0。
所以这个表达式的结果无论X为何值,都为True。
全部回答
- 1楼网友:不甚了了
- 2021-04-06 06:09
3<=x<10 这个判断是是 存在的,所以是true。因为X不定值
- 2楼网友:酒醒三更
- 2021-04-06 05:23
3<=x<10
貌似你输入任何一个数都成立吧
这个判断应该是个or连接,不过我没有验证过~~~~~~~·
貌似你输入任何一个数都成立吧
这个判断应该是个or连接,不过我没有验证过~~~~~~~·
- 3楼网友:不如潦草
- 2021-04-06 04:37
'楼上说的对,你可以用这个程序试验下
Option Explicit
Private Sub Command1_Click()
Dim a As String
Dim ibool As Boolean
Dim x As Integer
a = 0 <= x < 10
'要么a=true,要么a=false,只要a<>"0",那么ibool就是true
ibool = a
Print ibool
End Sub
Option Explicit
Private Sub Command1_Click()
Dim a As String
Dim ibool As Boolean
Dim x As Integer
a = 0 <= x < 10
'要么a=true,要么a=false,只要a<>"0",那么ibool就是true
ibool = a
Print ibool
End Sub
- 4楼网友:人類模型
- 2021-04-06 03:32
解释:先执行前面的:3<=x 结果是False或True,其又和后面的10比较,注意VB在进行不同类型比较时会自动转换类型(True=-1,False=0)所以不论是False还是True和10比较都为真。
估计你是想判断x是否在这之间,但是VB中的运算方式和数学有些差别
正确:If (3 <= x) And (x < 10) Then
估计你是想判断x是否在这之间,但是VB中的运算方式和数学有些差别
正确:If (3 <= x) And (x < 10) Then
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯