当前位置:网站首页 > 创业 > 正文

C#语法中checked、unchecked溢出检查如何使用

0 张子豪 张子豪 2025-10-14 21:08 1

在C#语法中,溢出凡是有两种处置体例,第一种是在界说的时辰直接赋值跨越规模的值,这个时辰编译器就能查抄出来。第二种就是利用checked,在界说的时辰没有溢出,后续计较的时辰溢出了,那么,程序就会报错。

东西/原料

  • visual studio

方式/步调

  1. 1

    打开visual studio,建立一个节制台应用程序,用于演示C#语法中的checked查抄溢出,和unchecked不查抄溢出的利用。在Main方式中,界说一个byte类型的变量,直接赋值256,因为byte的规模是0到255,所以,编译器直接报错

  2. 2

    点窜byte类型变量的初始值为255,然后,在后续代码中让其自增1,这个时辰理论上值到了256,可是,现实运行成果倒是0,跟预期的成果纷歧样,导致后续呈现异常时,排盘问题较难

  3. 3

    在vs中,调试运行代码,可以在节制台窗口中看到运行的成果为0,不是256。可是,整个运行过程中也没有报错

  4. 4

    若是想要避免呈现这样既不报错,也不是预期成果的环境,就可以利用checked关头字包裹这段代码,这样,在运行时,发现溢出,就会报错

  5. 5

    继续在vs中,调试代码,就会发现呈现了:System.OverflowException:“算术运算导致溢出”的错误。这样就能避免不报错,成果也不合适预期的环境

  6. 6

    假设,某些环境下,就是不但愿对溢出进行查抄,这个时辰就可以利用unchecked关头字,包裹不进行溢出查抄的代码段

  7. 7

    再次在vs中调试,会发现,这一次没有溢出的错误了。可是,其实数据仍是溢出了。是以,现实项目中,碰到溢出的时辰,可以改换为规模更大的数据类型

来源:百闻(微信/QQ号:9397569),转载请保留出处和链接!


本文链接:https://www.ibaiwen.com/web/279917.html

张子豪

张子豪

TA很懒,啥都没写...

@百闻娱乐 本站部分内容转自互联网,若有侵权等问题请及时与本站联系,我们将在第一时间删除处理。 | 粤ICP备2024343649号 | (地图