ch1[1] := #36;
  ch1[2] := Data[19];  ch1[3] := Data[20];  ch1[4] := chr($0);
  ch1[5] := chr($0);
    iNum := strtoint( ch1 ); 
能保证data数组中一定有值吗

解决方案 »

  1.   

    data数组中肯定有值,ch1[1]也是字符啊
      

  2.   

    ch1,ch2,ch3是一个定长的字符串而不是数组,可以对ch1,ch2,ch3一位一位的访问,但不能一位一位的赋值只能这样赋值:ch1 :=  #36; ch2 := Data[19];等
      

  3.   

    你不理解delphi的字符串的格式。在delphi中字符串的第一位也就是ch1[0]表示字符串的长度,后面跟着字符。你只负值后面的字符,但是字符串的长度还是0,当然字符串也就为空了。
    好想有个SetLength可以设置字符串的长度。不过这样太麻烦了。你可以简单处理。
    ch1:=ch1+#36;这样就万事大吉了。不必要这么麻烦。