vb里:Dim strstr1 as String *1024 
  与:Dim strstr1 as String 
  的区别是什么? 

解决方案 »

  1.   

    Dim strstr1 as String *1024 
    是定义了一个字符串,字符串的长度1024长. 
    如果你赋值的时候,超过1024个字节,就只取前1024字节,如果未有1024字节,其它的字节用 chr(0) 填充. Dim strstr1 as String 也是定义一个字符串,但是长度不定. 你赋值的时候,字符串有多长.他就变成多长. 
      

  2.   

    应该不是按字节计算的,而是按字符计算的.VB的String是Unicode,所以楼主问是不是dim strstr1 as string * 1024等同于char strstr1[1024],我的回复是差不多.实际上应该等价的是wchar_t strstr1[1024],但是我们在使用VB的String时,通常都是与ANSI版的API进行交互,所以生怕误导.
      

  3.   

    我测试了:dim strstr1 as string * 1024等同于char strstr1[1024]
           strstr1是1024个字节,不是1024个字符!
      

  4.   

    不知道
    dim strstr1 as string * size
    里的size可以多大?
      

  5.   

    Dim strstr1 As String * 27
    strstr1 = "每个字符等于两个字节测试一下是多个字符还是多个字节"
    MsgBox (strstr1)
    MsgBox Len(strstr1)
    MsgBox LenB(StrConv(strstr1, vbFromUnicode))
      

  6.   

    Dim strstr1 as String *1024  此限制為最大字符為1024
      与:Dim strstr1 as String 此限制為大约20亿字符
      

  7.   

    我定义:Dim strstr1 as String *&H7FFF可以编译通过
           Dim strstr1 as String *&H8000就不可以编译通过了!