String类型与Pchar类型的转换,该如何处理

String类型与Pchar类型的转换
String是$H+,也就是AnsiString类型.
1.String与PChar的转换后,为什么又要有重新设定String长度的说法???
2.以NULL字符结尾,NULL如果用#数字表示的话,#后面是什么数字呢?

------解决方案--------------------
var
s :String ;
p1,p2 :pointer ;

s:= 'this is ';
p1 := @s[1] ;
p2 := pchar(s) ;


該這樣比較
p1 = p2
pchar(p1) [0] = s[1]