在basic语言中,定义一个数组时要指定它的大小,比如dim a(100) 但实际中经常时要溢出,是否可定义无穷大的数组,还是有别的方法解决,望赐教!

解决方案 »

  1.   

    用REDIM重新定义它的大小,关于用法可以看帮助。
      

  2.   

    可以用动态数组
    dim a() as string用时根据实际情况用redim来定义
      

  3.   

    Dim tBytes() As BytesReDim tBytes(-32768 To 32767)另外,如果你的数组有内容的话:ReDim Preserve tBytes(-32768 To 32767)
    则不改变原来数组的内容,只是扩大或者缩小数组。BASIC和QBASIC下限制数组大小的原因是DOS下的内存访问局限。数组不能大于64KB。
    QB下使用动态数组可以超过64KB限制(需要QB /AH参数启动)。VB则几乎无限制,只要你的数组下标不超过long类型的限制,并且有足够的虚拟内存空间的话。
      

  4.   

    QB下定义动态数组(QB4.5以QB /AH启动,DOS下的QB以QBasic /AH启动,BASIC 7.0以QBX /AH启动):DIM tValues(N) As Long
    REDIM tValues(100)VB下定义动态数组:Dim tValues() As Long
    ReDim tValues(100)
    同时多了可保留原有元素的值的关键字:
    ReDim Preserve tValues(100)