我是被朋友引导到这个网站的。
我正在尝试and
在 Delphi 中使用,但我似乎做错了什么。你有什么需要投入使用的吗?
我有以下代码:
procedure TForm1.Button1Click(Sender: TObject);
var
a,b:string;
begin
a:=edit1.Text;
b:=edit2.Text;
if a=abc and b=def then
showmessage(a+b);
end;
我在第二个 = 符号处收到错误
我是被朋友引导到这个网站的。
我正在尝试and
在 Delphi 中使用,但我似乎做错了什么。你有什么需要投入使用的吗?
我有以下代码:
procedure TForm1.Button1Click(Sender: TObject);
var
a,b:string;
begin
a:=edit1.Text;
b:=edit2.Text;
if a=abc and b=def then
showmessage(a+b);
end;
我在第二个 = 符号处收到错误
您必须放置一些括号来更改运算符优先级:
if (a=abc) and (b=def) then
运算符and
在前面=
,因此不带括号的构造被理解为
a=(abc and b=def)
会产生语法错误。
and
的优先级高于=
。所以if a=abc and b=def then
变成if a=(abc and b)=def then
,这是无效的。所以像这样写if (a=abc) and (b=def) then
。
Delphi的运算符优先级规则让您感到困惑。有四个级别。
在您的示例中,将首先进行 AND 比较,除非您使用括号强制首先进行相等比较。
字符串中肯定缺少撇号 - 语句应该是
如果 (a = 'abc') 和 (b = 'def') 那么...