书中说,编译器会自动转换string和widestring,但实际使用中会发生错误,为什么?怎么解决!
procedure TForm1.Button5Click(Sender: TObject);
var str:string;
wstr:widestring;
begin
str := #$1b#$a2#$65#$01#$00#$90#$07#$90;
dispmsg('s:'+strtohex(str));
wstr := str;
dispmsg('w:'+strtohex(wstr));
str := '';
str := wstr;
dispmsg('d:'+strtohex(str));
end;
结果:
Memo1
s:1BA2650100900790
w:1BA26501003F00
d:1BA26501003F00
procedure TForm1.Button5Click(Sender: TObject);
var str:string;
wstr:widestring;
begin
str := #$1b#$a2#$65#$01#$00#$90#$07#$90;
dispmsg('s:'+strtohex(str));
wstr := str;
dispmsg('w:'+strtohex(wstr));
str := '';
str := wstr;
dispmsg('d:'+strtohex(str));
end;
结果:
Memo1
s:1BA2650100900790
w:1BA26501003F00
d:1BA26501003F00
procedure TForm1.Button5Click(Sender: TObject);
var str:string;
wstr:widestring;
begin
str := #$1b#$a2#$65#$01#$00#$90#$07#$90;
dispmsg('s:'+strtohex(str));
wstr := str;
str := wstr;
dispmsg('d:'+strtohex(str));
end;
结果:
Memo1
s:1BA2650100900790
d:1BA26501003F00