执行print "56"+11,输出结果为何为67?
按我的理解,"56"是字符串,与11相加,应将11转成字符串“11”或ASCII码11对应的字符,但输出67好像是将56转换成整数了,不解其中原因,请赐教。

解决方案 »

  1.   

    print "56" & "11"
      

  2.   

    用"+"连接的话,如果两旁操作数都是字符型,则连接成字符串,若均为数值型则进行算术加运算;
    若一个为非数字字符型,一个为数值型,则自动将数字字符转换为数值,然后进行算术加;
    若一个为非数字字符型,另一个为数值型,则出错!如:
    "12000" + 12345 = 24345
    "12000" + "12345" = "1200012345"
    "abcd" + 12345       //错误!用"&"来连接操作数,不管前后是字符还是数字,都统一先转化为字符,然后连接。
    如:
    "12000" & 12345 = "1200012345"
    12000 & 12345 = "1200012345"
    好了,楼主不要忘记结帖哦!
      

  3.   

    vb中,如果两个变量都包含数,“+”运算符执行加法运算;如果两个变量都包含字符串,
    “+”运算符执行字符串连接。如果一个代表数,另一个代表字符串,则情况较复杂,vb
    首先试图把字符串变成数,如果转换成功,那么“+”运算符执行加法运算,否则产生
    一个“类型不匹配”错误。
    建议字符串连接最好用 “&”运算符。
      

  4.   

    print "56" & 11