Pascal - 布尔运算符


下表列出了 Pascal 语言支持的所有布尔运算符。所有这些运算符都处理布尔操作数并产生布尔结果。假设变量A为 true,变量B为 false,则 -

操作员 描述 例子
称为布尔 AND 运算符。如果两个操作数都为 true,则条件为 true。 (A 和 B)是错误的。
进而 它类似于 AND 运算符,但是,它保证编译器计算逻辑表达式的顺序。从左到右,仅在必要时才计算右操作数。 (A,然后 B)是错误的。
或者 称为布尔或运算符。如果两个操作数中的任何一个为真,则条件为真。 (A 或 B)为真。
要不然 它类似于布尔 OR,但是它保证编译器计算逻辑表达式的顺序。从左到右,仅在必要时才计算右操作数。 (A 或 B)为真。
不是 称为布尔非运算符。用于反转其操作数的逻辑状态。如果条件为真,则逻辑 NOT 运算符会将其设为假。 不是(A 和 B)为真。

下面的例子说明了这个概念 -

program beLogical;
var
a, b: boolean;

begin
   a := true;
   b := false;

   if (a and b) then
      writeln('Line 1 - Condition is true' )
   else
      writeln('Line 1 - Condition is not true'); 
   if  (a or b) then
      writeln('Line 2 - Condition is true' );
   
   (* lets change the value of  a and b *)
   a := false;
   b := true;
   
   if  (a and b) then
      writeln('Line 3 - Condition is true' )
   else
      writeln('Line 3 - Condition is not true' );
   
   if not (a and b) then
   writeln('Line 4 - Condition is true' );
end.

当上面的代码被编译并执行时,它会产生以下结果 -

Line 1 - Condition is not true
Line 2 - Condition is true
Line 3 - Condition is not true
Line 4 - Condition is true
pascal_operators.htm