關于 CSharp 值-CSharp checked 關鍵詞

作者:vkvi 來源:千一網絡(原創) 日期:2019-4-24

如上代碼,直接編譯通不過。但看下面的代碼就不一樣了:

上述編譯通過,而且運行還不會報錯,只是結果是:

  • 2147483647
  • -2147483648
  • -2147483647
  • -2147483646

原來它是翻過去,又從 int 的最小值開始了。

如何避免這種情況呢?使用  checked

當越界時,會觸發溢出異常。要注意:checked {} 雖然可以包含多句代碼,但是也將內部變量的作用域限定在了 {} 范圍。

還有一個 unchecked,語法類似,沒什么用,因為默認就是 unchecked 的。可能某些設置會改變默認行為吧,有了 unchecked 就是要強制允許溢出。

相關文章
文章評論
最新22选5开奖公告