在http://tour.golang.org/#14他们展示了一个例子,其中数字 1 被移位了 64 位。这当然会导致溢出,但随后将其减 1,一切正常。一半的表达式如何导致失败,而整个表达式作为一个整体工作正常?
想法:我认为将 unsigned 设置为大于它允许的数字是导致爆炸的原因。似乎表达式右侧的内存分配比左侧更松散?这是真的?
相关分类