读书人

请教这个表达式什么意思?

发布时间: 2012-03-02 14:40:28 作者: rapoo

请问这个表达式什么意思??
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个是受保护的,所以程序会出错

读书人网 >.NET

热点推荐