关于Pascal语言,问题1

                            
procedure   RealizeLength(var   S:string)   
  begin    
            SetLength(S,StrLen(PChar(S)))  
  end;  
   
  var  
        S:string;  
  begin  
        SetLength(S,256);  
        GetWindowDirectory(PChar(S),256);     //假如得到的目录为     C:\\window  
        RealizeLength(S);//设置S的长度为null结束的长度  
  end;  
   
  对于这段程序,书中指出,如果使用了将AnsiString字符串强制转换  
  为PChar类型的函数和过程,在使用过程结束后,要手工把它的长度  
  恢复为原来以null结束的长度。  
  如何理解“恢复为原来以null结束的长度”?  
   
  谢谢

查看回复