
vb中的运算符mod和前后的数字之间一定要自己输入空格吗?
1个回答
展开全部
如果VB能够自动识别出的,它就会自动加空格,如果无法识别出的,它就不会自动加空格。
mod和3之间如果不手工加空格,VB会认为mod3是个变量名,而由于这个“变量”事实上是未声明的,所以它的值就是空白,那么VB打印出来就是一个7再加上后面的空白。
不信的话你可以试试下面的有趣实验:
在立即窗口输入
mod3=100
?7mod3
你会发现这时候显示的是
7 100
明白了吗?所以最好养成手工加空格的习惯!
补充说明:之所以会出现这样的情况,是因为Mod这个运算符是完全由字母组成,它跟其他字母、数字或符号组合后会产生不同的意思,这样的话电脑即使再智能也无法识别其真正的意思。比如你想求变量a与b的余数,如果你写成amodb,你认为VB会真的认为是a Mod b的意思?是变量amodb不行吗?
与此类似的还有&这个符号,如果不手工加空格,也会让VB走火入魔的,比如 &HA表示16进制数,A&则表示变量A是个长整型数,A & HA 表示变量A与变量HA进行字符串连接,A&HA呢?VB会疯掉的!
mod和3之间如果不手工加空格,VB会认为mod3是个变量名,而由于这个“变量”事实上是未声明的,所以它的值就是空白,那么VB打印出来就是一个7再加上后面的空白。
不信的话你可以试试下面的有趣实验:
在立即窗口输入
mod3=100
?7mod3
你会发现这时候显示的是
7 100
明白了吗?所以最好养成手工加空格的习惯!
补充说明:之所以会出现这样的情况,是因为Mod这个运算符是完全由字母组成,它跟其他字母、数字或符号组合后会产生不同的意思,这样的话电脑即使再智能也无法识别其真正的意思。比如你想求变量a与b的余数,如果你写成amodb,你认为VB会真的认为是a Mod b的意思?是变量amodb不行吗?
与此类似的还有&这个符号,如果不手工加空格,也会让VB走火入魔的,比如 &HA表示16进制数,A&则表示变量A是个长整型数,A & HA 表示变量A与变量HA进行字符串连接,A&HA呢?VB会疯掉的!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询