Var
mychar : char ;
Begin
mychar:=edit1.text;
case mychar of
'A'..'Z','a'..'z' : showmessage('是字母');
'0'..'9' : showmessage('是数字');
end;
End;
这段程序那里有错误?应该如何修改?
mychar : char ;
Begin
mychar:=edit1.text;
case mychar of
'A'..'Z','a'..'z' : showmessage('是字母');
'0'..'9' : showmessage('是数字');
end;
End;
这段程序那里有错误?应该如何修改?
i:integer;
s:String;
begin
s;=edit.text;
if length(s) > 0 then
for i:=1 to length(s) do
if s[i] in ['a'..[z],'A'..'Z'] then
showmessage('是字母')
else if s[i] in ['0'..'9'] then
showmessage('是数字');
end;这个是判断每一个字母的情况如果是要判断这个字符串可以这样。。 for i:=0 to length(s) do
if not (s[i] in ['0'..'9']) then
begin
showmessage('这不是一个整字') break;
end;你上面的用法不对。。
mychar:=edit1.text; //类型不匹配,char类型无法从String类型获取内容
2:看你的代码,似乎mychar:=edit1.text;应该写成mychar:=edit1.text[1];
mychar : char ;
Begin
mychar:=edit1.text[1];
if mychar in['A'..'Z','a'..'z'] then showmessage('是字母')
else if mychar in ['0'..'9'] then showmessage('是数字');
End;