字符串中要有内容。内容是什么没关系。

解决方案 »

  1.   

    dim a as string*100000
      

  2.   

    这样不行的吧,定长string有大小限制啊
      

  3.   

    我查阅了以下MSDN,vb支持最多63k的定长字符串,但可支持2M长的动态字符串。只有用数组方法定义定长的100k的字符串。
      

  4.   

    我本来是想用GlobalAlloc来申请一个空间的,但是,不知道怎么用,这个函数能支持这么大的空间吗?
      

  5.   

    不定长String在没有赋值时,长度为0,我怎么让她到达100k啊,不会用for循环把。还有,GlobalAlloc分配内存的时候会自己初始化吗?如果是的话,她是怎么样初始化的
      

  6.   

    帮我看看错在哪里,好吗
    =============================Private Declare Sub CopyMemoryH2S Lib "kernel32" Alias _
            "RtlMoveMemory" (ByVal dst As String, ByVal _
            src As Long, ByVal SIZE As Long)
    Private Declare Sub CopyMemoryS2H Lib "kernel32" Alias _
            "RtlMoveMemory" (ByVal dst As Long, ByVal src _
            As String, ByVal SIZE As Long)Private Declare Function GlobalAlloc Lib "kernel32" (ByVal _
            wFlags As Long, ByVal dwBytes As Long) As Long
    Private Declare Function GlobalFree Lib "kernel32" (ByVal hMem _
            As Long) As LongConst GMEM_FIXED = &H0Private Sub Command1_Click()
        Dim mHandle As Long
        Dim bstr As String * 256
        
        astr = Left$(Text1.Text, 255)
        '分配一个300字节的内存块
        mHandle = GlobalAlloc(GMEM_FIXED, 102401)
        '将内存块的内容拷贝到字符串中
        CopyMemoryH2S bstr, mHandle, 102400
        GlobalFree mHandle
    End Sub
      

  7.   

    搂主要调api吧,用space就可以了
    dim a as string
    a=space(102400)         '这样会分配100k个空格
    a=string(102400,"a")    '这样会分配100k个a
      

  8.   

    感谢bdhh,这个真的是救命的啊
      

  9.   

    dim a as string
    a=space(102400)         '这样会分配100k个空格
    a=string(102400,"a")    '这样会分配100k个a谢楼上的楼上~
    我也正找呢~