我定义了一个集合:
type
Tcharset= set of char;
var
charset:Tcharset;
pd:string;
begin
charset:=['z','y','x'];
end;
然后我从一个string里取出一个字母pd,我判断它是否在这个集合
pchar(pd) in CharSet),系统报错:
Incompatible types: 'PAnsiChar' and 'Char'
请问,问题出在那里?
type
Tcharset= set of char;
var
charset:Tcharset;
pd:string;
begin
charset:=['z','y','x'];
end;
然后我从一个string里取出一个字母pd,我判断它是否在这个集合
pchar(pd) in CharSet),系统报错:
Incompatible types: 'PAnsiChar' and 'Char'
请问,问题出在那里?
if pd[i] in charset then
begin
// 存在这样的字符属于集合中
Break;
end;
str,pd:string;
pd:=copy(str,7,1);
if (pchar(pd) in CharSet) then //在这行报类型不匹配
.....
应该怎么来判断,请教了!
Str,Pd:String;
begin
if Str[7] in CharSet then ....
end;
没有必要COPY呀……
有更好的方法吗?
TCharSet=Set of Char;
....
procedure TForm1.Button1Click(Sender: TObject);
var
CharSet:TCharSet;
S:String;
begin
CharSet:=['F','S'];
S:='FSFSFSF';
if S[7] in CharSet then ShowMessage('Exist');
end;偶给你的方法不可以吗?