定义了一个变量 比如为:String类型,但是我赋值的时候为数字类型,比如123456然后运行时候没有问题不会报错,但是如果声明的时候为:Integer或Single的时候,赋值为字符的时候,运行的时候就会报错,类型不匹配。
是不是String类型可以赋值为数字?

解决方案 »

  1.   

    你定义一个string变量,给它赋值:123456,系统会自动的把它转换为String 类型,不会报错。
    如果你定义一个integer类型的变量,因为超出数据类型范围,报错是必然的。
    至于Single会报错,我认为你应该搞错了,因为123456并没有超出范围。
      

  2.   

    编译器会自动进行隐式转换。或者你程序强制转换。转换数据类型
     Visual Basic 提供了几种转换函数,可用来将值转换成特定数据类型。例如,用 CCur 函数将值转换成 Currency 类型:PayPerWeek = CCur (hours * hourlyPay)转换函数 将表达式转换成 
    Cbool Boolean 
    Cbyte Byte 
    Ccur Currency 
    Cdate Date 
    CDbl Double 
    Cint Integer 
    CLng Long 
    CSng Single 
    CStr String 
    Cvar Variant 
    CVErr Error 
    注意 对目标数据类型,传递到转换函数的值必须是有效的,否则会发生错误。例如,如果想把 Long 型数转换成 Integer 型数,那么,Long 型数必须在 Integer 数据类型的有效范围之内。