所以基本上在GNU-Prolog
中,我有一些像这样的代码:
....
( integer(X) -> write("TRUE"), nl
; write("FALSE"), nl
),
write(X /\ 0xff), nl.
根据输出,我确信X
是整数..
但我感到困惑的是,第二个输出是这样的:
435321 /\ 0xff
我期待的是435321 /\ 0xff
的值 ......
这里有什么问题?有人能给我一些帮助吗?
答案 0 :(得分:2)
Prolog仅在某些特定情况下评估算术表达式(is
,算术比较等...)
你应该这样做:Result is X /\ 0xff, write(Result)
。