C# 整數的溢位處理
在Project Euler 問題10 的上下文中,您在使用整數(int) 時遇到了意外行為變數來計算200 萬以下的質數總和。儘管結果超出了 int 的最大值,C# 並沒有引發溢位異常。
與其他一些程式語言不同,C# 整數運算預設不會在溢位時引發異常。這意味著當發生溢出時,結果只是「繞回」到資料類型範圍內的值。在 int 的情況下,結果將在負值範圍內,遠離您所尋求的實際總和。
要明確處理溢出,您有兩個選項:
int result = checked(largeInt + otherLargeInt);
在這種情況下,溢位將拋出System.OverflowException。 unchecked,它會抑制溢位檢查。
以上是如何處理 C# 中的整數溢位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!