为什么它不能被计算为整数?

时间:2014-06-17 02:34:48

标签: prolog

所以基本上在GNU-Prolog中,我有一些像这样的代码:

....
( integer(X) -> write("TRUE"), nl
  ;             write("FALSE"), nl
),
write(X /\ 0xff), nl.

根据输出,我确信X是整数..

但我感到困惑的是,第二个输出是这样的:

435321 /\ 0xff

我期待的是435321 /\ 0xff ......

这里有什么问题?有人能给我一些帮助吗?

1 个答案:

答案 0 :(得分:2)

Prolog仅在某些特定情况下评估算术表达式(is,算术比较等...)

你应该这样做:Result is X /\ 0xff, write(Result)