我认为基本思路是合理的,但需要进行一些调整:
- 您的函数不会在上溢出
sys.maxint+1
,但是应该; sys.maxint
一次 *** 作可以超过几次;-sys.maxint-1
还需要考虑以下负值。
考虑到这一点,我提出了以下建议:
import sysdef int_overflow(val): if not -sys.maxint-1 <= val <= sys.maxint: val = (val + (sys.maxint + 1)) % (2 * (sys.maxint + 1)) - sys.maxint - 1 return val
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)