注:Delphi 的位操作(与或非)与逻辑操作的关键字是相同的。
| 位操作 | c/c++ | delphi/pascal |
| 与 | & | and |
| 或 | | | or |
| 非 | ! | not |
| 异或 | ^ | xor |
| 左移 | << | shl |
| 右移 | >> | shr |
c/c++中的逻辑操作转Delphi表示方式 如:
c/c++
if(a&b)
{
// do something
}
delphi
在c中关系运算只要是非0则为真,而在delphi中只有true/false,所以不能这么写。
以下delphi写法是错误的(无法编译):
if a and b begin // do something end;
在delphi中应先进行位操作然后再进行关系判断,以上表达式可以先 (a and b) 得到具体的数值,
然后再判断是大于0、小于0、或者是等于0即可。如:
if (a and b) <> 0 begin
// do something
end;




