日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

C# checked、unchecked操作符

發布時間:2023/11/27 生活经验 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C# checked、unchecked操作符 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
checked和unchecked操作符用于整型算術運算時控制當前環境中的溢出檢查。下列運算參與了checked和unchecked檢查(操作數均為整數): 1)? 預定義的++和――一元運算符。 2)? 預定義的-一元運算符。 3)? 預定義的+、-、×、/等二元操作符。 4)? 從一種整型到另一種整型的顯示數據轉換。
當上述整型運算產生一個目標類型無法表示的大數時,可以有相應的處理方式:
(一)使用checked 若運算是常量表達式,則產生編譯錯誤:The operation overflows at complie time in checked mode. 若運算是非常量表達式,則運行時會拋出一個溢出異常:OverFlowException異常
(二)使用unchecked 無論運算是否是常量表達式,都沒有編譯錯誤或是運行時異常發生,只是返回值被截掉不符合目標類型的高位。
(三)既未使用checked又未使用unchecked 若運算是常量表達式,默認情況下總是進行溢出檢查,同使用checked一樣,會無法通過編譯。 若運算是非常量表達式,則是否進行溢出檢查,取決于外部因素,包括編譯器狀態、執行環境參數等。
下例說明了checked和unchecked操作符在非常量表達式中的使用方法: class Test { static int x = 1000000; static int y = 1000000; static int F() { return checked(x*y);???? //運行時拋出OverFlowException異常 } static int G() { return unchecked(x*y);? //截去高位部分,返回-727379968 } static int H() { return x*y;???? //依賴于編譯器的默認設置,一般是不檢查 } }
checked和unchecked操作符在常量表達式中的使用方法: class Test { const int x = 1000000; const int y = 1000000; static int F() { return checked(x*y);???? //編譯錯誤,編譯無法通過 } static int G() { return unchecked(x*y);? //截去高位部分,返回-727379968 } static int H() { return x*y;???? //編譯錯誤,編譯無法通過 } } ?

總結

以上是生活随笔為你收集整理的C# checked、unchecked操作符的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。