var
ttstr:string;
ttnum:integer;
begin
ttstr:='⒈⒉⒊⒋⒌⒍踹姑娘的小蘑菇⒎XXXXX⒐YYYYY'; //⒎⒐都是特殊符号
ttnum:=Pos('⒐',ttstr);
showmessage( inttostr(ttnum) + '-' + copy(ttstr,ttnum+2,5) );输出结果为“24-舰稾X”
为什么会得到这个结果?怎么才能让它得到正确的答案啊?
ttstr:string;
ttnum:integer;
begin
ttstr:='⒈⒉⒊⒋⒌⒍踹姑娘的小蘑菇⒎XXXXX⒐YYYYY'; //⒎⒐都是特殊符号
ttnum:=Pos('⒐',ttstr);
showmessage( inttostr(ttnum) + '-' + copy(ttstr,ttnum+2,5) );输出结果为“24-舰稾X”
为什么会得到这个结果?怎么才能让它得到正确的答案啊?
var
ttstr:widestring;--用Widestring,统一为每个字符分配2个字节的存储单元
ttnum:integer;
begin
ttstr:='⒈⒉⒊⒋⒌⒍踹姑娘的小蘑菇⒎XXXXX⒐YYYYY'; //⒎⒐都是特殊符号
ttnum:=Pos('⒐',ttstr);
showmessage( inttostr(ttnum) + '-' + copy(ttstr,ttnum+2,5) );
end;
copy的第3个参数[5]会根据第1个参数[ttstr]的类型来决定复制的“字节”数吗?
当ttstr:string时,copy复制了5个字节。当ttstr:widestring时,copy了10个字节?是这样的吗?(猜的)