操作符的优先问题
procedure TForm1.Button1Click(Sender: TObject);
var
ff:string;
begin
if( box2.Checked =false) and( box1.Checked =false )then
ff:='0';
if (box2.Checked =false )and (box1.Checked =true) then
ff:='1';
if( box2.Checked =true) and( box1.Checked =false )then
ff:='2';
if( box2.Checked =true) and (box1.Checked =true )then
ff:='3';
edit1.Text :=ff;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
ff:string;
begin
if( box2.Checked =false) and( box1.Checked =false )then
ff:='0';
if (box2.Checked =false )and (box1.Checked =true) then
ff:='1';
if( box2.Checked =true) and( box1.Checked =false )then
ff:='2';
if( box2.Checked =true) and (box1.Checked =true )then
ff:='3';
edit1.Text :=ff;
end;
if (box2.Checked =false) and (box1.Checked =false) then
因为在pascal中and比=优先级高
procedure TForm1.Button1Click(Sender: TObject);
var
ff:string;
begin
if (box2.Checked =false) and( box1.Checked =false) then
ff:='0';
if (box2.Checked =false) and (box1.Checked =true) then
ff:='1';
if (box2.Checked =true )and (box1.Checked =false )then
ff:='2';
if (box2.Checked =true) and (box1.Checked =true) then
ff:='3';
edit1.Text :=ff;
end;//以下代码为何得到“2”?procedure TForm1.Button2Click(Sender: TObject);
var
ff:string;
begin
if (box2.Checked =false) and (box1.Checked =false )then
ff:='0';
if (box2.Checked =false) and (box1.Checked) then
ff:='1';
if (box2.Checked )and (box1.Checked =false) then
ff:='2';
if (box2.Checked) and (box1.Checked )then
ff:='3';
edit1.Text :=ff;
end;end.
procedure TForm1.Button1Click(Sender: TObject);
var
ff:string;
begin
if (box2.Checked =false) and (box1.Checked =false) then
ff:='0';
if (box2.Checked =false) and (box1.Checked =true) then
ff:='1';
if (box2.Checked =true) and (box1.Checked =false) then
ff:='2';
if (box2.Checked =true) and (box1.Checked =true) then
ff:='3';
edit1.Text :=ff;
end;
var
ff:string;
begin
if (box2.Checked =false) and (box1.Checked =false) then
ff:='0';
if (box2.Checked =false) and (box1.Checked =true) then
ff:='1';
if (box2.Checked =true) and (box1.Checked =false) then
ff:='2';
if (box2.Checked =true) and (box1.Checked =true) then
ff:='3';
edit1.Text :=ff;
end;我刚试过,OK!