下面这几个语句是什么意思,Enc(0),Enc(1)的最终结果是多少?请详细解释一下,谢谢Enc(0) = String(80, 0)
Enc(1) = String(80, 0)
For i = 0 To 1
    Enc(i) = Left(Enc(i), InStr(1, Enc(i), Chr(0)) - 1)
 Next

解决方案 »

  1.   

    Enc(0) = String(80, 0)'Enc是字符串数组 Enc(0)有 80个 chr(0) 字符
    Enc(1) = String(80, 0)Enc(0)也有 80个 chr(0) 字符
    For i = 0 To 1
        '把Enc的字符截去最右边的chr(0)字符,可能程序以为最右边的chr(0)字符是没用的字符
        Enc(i) = Left(Enc(i), InStr(1, Enc(i), Chr(0)) - 1)
     Next
      

  2.   

    所以Enc(0),Enc(1)的最终结果 要看后来你给Enc(0),Enc(1)负了什么值反正最后来 会截去Enc后面多余的chr(0) 字符
      

  3.   

    Enc(0) = String(80, 0)   '赋值,80个chr(0)的字串
    Enc(1) = String(80, 0)
    For i = 0 To 1
        Enc(i) = Left(Enc(i), InStr(1, Enc(i), Chr(0)) - 1)
        'i=0时,instr(1,enc(0),chr(0))-1=0
        'left(end(0),0)=""
        '所以,最后是enc(0)和enc(1)都为长度为0的空字串。
     Next
      

  4.   

    不明白這段語句到底有何意義.
    前兩行分別給Enc(0)和Enc(1)值,其內容為80個值为0的字符串
    第三至六行分別給Enc(0)和Enc(1)重新賦值,不過都為空(長度為0),
    因為InStr(1, enc(i), Chr(0)) - 1=0結果Enc(0)=vbNullString
        Enc(1)=vbNullString
      

  5.   

    //所以,最后是enc(0)和enc(1)都为长度为0的空字串。同意,enc(i)=left(enc(i),0)
      

  6.   

    的确,我也不知道为什么要写这段代码,使为了测试String()函数,InStr()函数还是Left()函数?
      

  7.   

    就是除去enc(0)和enc(1)字符数组中的空字符串~