vb “+" 与 "&" 区别,请高手指教,,,,

wxlwxlwxlwxl 2006-08-28 09:26:41
用“+”连接的整型变量,回报错类型不匹配。
用“&”连接的整型变量,没问题。
这是怎么回事?
...全文
166 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxlwxlwxlwxl 2006-08-28
  • 打赏
  • 举报
回复
多谢楼上几位高人
zhuanzhu_zhizhuo 2006-08-28
  • 打赏
  • 举报
回复
应该是同种类型才可以 “+”的吧
字符串 用&好啊
zq972 2006-08-28
  • 打赏
  • 举报
回复
& 运算符

用来强制两个表达式作字符串连接。




在使用 + 运算符时有可能无法确定是做加法还是做字符串连接。为避免混淆,请使用 & 运算符进行连接,并且改进程序代码的可读性。
浪子家园 2006-08-28
  • 打赏
  • 举报
回复
+ 可以作为算述运算的加法计算,也可以作为字符串的连接符;

& 只是用作字符串的连接,而且可以以这样的方式运算:

dim a as long
dim b as string
dim c as string
dim d as long
dim x as string
a=123
b="234"
c=a & b
d=a + 123456
x=a + b '这里出现错误,类型不匹配

这样c为字符串值“123234”,d为long值123579,x得不出值,因为类型不匹配
benyfeifei 2006-08-28
  • 打赏
  • 举报
回复
+ 两边只要有一个字符串,结果就是字符串
-------------
你测试一下,VB肯定报错“类型不匹配”。当使用"+"运算符时,如果操作数中有数字,则VB会将整语句看出是标准的四则运算。

insert into table (name,count) values('"+trim(txt_name)+"',"+val+")
改成如下:
insert into table (name,count) values('"+trim(txt_name)+"',"+CStr(val)+")

建议在进行字符串连接时,尽量使用"&"运算符。
gefengxztg 2006-08-28
  • 打赏
  • 举报
回复
+ 两边只要有一个字符串,结果就是字符串
& 结果总返回字符串
muroachanf 2006-08-28
  • 打赏
  • 举报
回复
路过一下,学习
wxlwxlwxlwxl 2006-08-28
  • 打赏
  • 举报
回复
我是这样写的
val 是 integer 的
insert into table (name,count) values('"+trim(txt_name)+"',"+val+")
回报错说是不匹配。
用“&”没事
benyfeifei 2006-08-28
  • 打赏
  • 举报
回复
给出出错的代码。

"+"一般作为数字运算符使用;
"&"一般用来强制两个表达式作字符串连接。
zhangzhijian 2006-08-28
  • 打赏
  • 举报
回复
是的,+当两边类型不一致会报错
&只是用来连接字符串
熊孩子开学喽 2006-08-28
  • 打赏
  • 举报
回复
+用来连接字符串或者数值计算
&用来连接字符串

为了不把自己搞糊涂,楼主就这么用:
当连接两个字符串的时候就用 & , 注意:这个符号两边要各留1个空格
当数值计算相加求和的时候就用+

其他的时候,楼主先把两边的变量转换成都是数值或都是字符串。
千万别去搞什么自动转换,那是个非常不好的习惯,就和不事先定义变量一样,都是隐患。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧