我在Project Euler(顺便说一句很棒的网站)上遇到了第10个问题的奇怪经历.任务是计算低于200万的所有素数之和.
我使用了一个int作为总和,我的算法产生了答案,但是当我粘贴它来验证答案时,它是错误的.
结果是结果太大而不适合int,但这不会导致溢出错误或其他什么?相反,它只返回了一个远离真实答案的值.
当我把类型改为long时,一切都很笨拙.
c# overflow
c# ×1
overflow ×1