请问这个表达式什么意思??
procedure TForm1.Button1Click(Sender: TObject);
var
s: String;
begin
s := 'abcde';
PChar(s)[0] := 'm';
ShowMessage(s);
end;
??????PChar(s)[0] := 'm';请大家指点下这个表达式什么意思???
[解决办法]
将s转为pchar,然后第0个字符赋'm'
当然,语法上没问题,但程序不可运行,因为String数据从1开始的,第0个是放长度的(对shortString来说,对long String为兼容,也从1开始的),第0个是受保护的,所以程序会出错