非零整数bnot的结果是否总是翻转符号?更准确地说:
bnot
bnot NonNeg
bnot Neg
bzzcjhmw1#
看起来像是的,除了-0。而且,它应该像在C中一样工作。
Eshell V11.1.7 (abort with ^G) 1> bnot 1. -2 2> bnot -1. 0 3> bnot 55. -56 4> bnot -55. 54 5> bnot 23456789543213456787654323456789765432. -23456789543213456787654323456789765433 6> bnot -23456789543213456787654323456789765432. 23456789543213456787654323456789765431 7> bnot 0. -1 8> bnot -0. -1 9>
4dbbbstv2#
简而言之--是的。原因是Erlang使用U2来编码负整数,这意味着bnot X本质上等价于-X - 1。
bnot X
-X - 1
2条答案
按热度按时间bzzcjhmw1#
看起来像是的,除了-0。而且,它应该像在C中一样工作。
4dbbbstv2#
简而言之--是的。
原因是Erlang使用U2来编码负整数,这意味着
bnot X
本质上等价于-X - 1
。