vb中+号的使用

1、首先与http://zhidao.baidu.com/question/20979694.html?si=5的问题一样。
加号的两端在不同时是数字时,运行的效果应该是两边的量相加,相当于符号&
如Val(text1.text)+数字 ——> text1.text数字
但是我写
text1.text=1
text2.text=2
text3.text=text1.text+text2.text
表达text3=12怎么会这样。
在写一次代码,与以上不同(具体怎样我忘了),但和上面是同一思路的,text3.text=3正确
+号的用法应该注意些什么?
2、在这种情况下val有什么作用
3、text1.text=1与text1=1是不是等效的,后边的text属性被默认了。

1 应写成text3=val(text1)+val(text2)。加号在有字符串的情况下自动变成连接全部字符串,等价于&,且非字符串的内容自动转换为字符串。Text里存放的无论是数字还是字母都视同字符串

2 val转换字符串为数值。确切地说你对val的理解有偏差,Val(text1.text)+数字 不是等于 text1.text数字 ,而是等于text1中存放的数字+数字,比如text1中是1,那么Val(text1.text)+2 = 3。如果你要连接,写法该是text1+str(2),结果是12

3 等效,大多数控件都有一个默认属性,直接用控件名就可以引用
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-09-15
text1里面是存放的字符串,如果是两个字符串相连结果就是这样了,你可以加VAL()函数
第2个回答  2008-09-15
你的这句:‘如Val(text1.text)+数字 ——> text1.text数字’
理解是错的,Val(text1.text)+数字 ——> 应该是运算结果,不是“text1.text数字”

2、需要数学运算的话,text1要写成val(text1),这样把text1中的字符串转成数值!若是纯粹连接字符的话最好用&,不要 + ,用+连接字符时,如果一边是字符串型数值,一边是数值型,也会进行运算,这样就起不到连接的效果了!

3、是等效的,你的理解正确
相似回答