在C#语法中,溢出凡是有两种处置体例,第一种是在界说的时辰直接赋值跨越规模的值,这个时辰编译器就能查抄出来。第二种就是利用checked,在界说的时辰没有溢出,后续计较的时辰溢出了,那么,程序就会报错。
东西/原料
- visual studio
方式/步调
- 1
打开visual studio,建立一个节制台应用程序,用于演示C#语法中的checked查抄溢出,和unchecked不查抄溢出的利用。在Main方式中,界说一个byte类型的变量,直接赋值256,因为byte的规模是0到255,所以,编译器直接报错
- 2
点窜byte类型变量的初始值为255,然后,在后续代码中让其自增1,这个时辰理论上值到了256,可是,现实运行成果倒是0,跟预期的成果纷歧样,导致后续呈现异常时,排盘问题较难
- 3
在vs中,调试运行代码,可以在节制台窗口中看到运行的成果为0,不是256。可是,整个运行过程中也没有报错
- 4
若是想要避免呈现这样既不报错,也不是预期成果的环境,就可以利用checked关头字包裹这段代码,这样,在运行时,发现溢出,就会报错
- 5
继续在vs中,调试代码,就会发现呈现了:System.OverflowException:“算术运算导致溢出”的错误。这样就能避免不报错,成果也不合适预期的环境
- 6
假设,某些环境下,就是不但愿对溢出进行查抄,这个时辰就可以利用unchecked关头字,包裹不进行溢出查抄的代码段
- 7
再次在vs中调试,会发现,这一次没有溢出的错误了。可是,其实数据仍是溢出了。是以,现实项目中,碰到溢出的时辰,可以改换为规模更大的数据类型
来源:百闻(微信/QQ号:9397569),转载请保留出处和链接!
本文链接:https://www.ibaiwen.com/web/279917.html
- 上一篇: xcode如何快速查找代码
- 下一篇: 熊猫武士大冒险轻松过第一关详细游戏攻略
- 热门文章
-
WB蒙特利尔(WB Montreal)——欧美十大最差视频游戏开发商
迅猛龙(Velociraptor)——欧美史前十大死亡动物
什么是果酱猫(What Marmalade Cats)?
神奇蜘蛛侠2(The Amazing Spider-Man 2)——欧美最佳蜘蛛侠电影
faceu激萌怎么把瘦脸开到最大
希瑟(Heather)——欧美十大最佳柯南灰歌
奥兹奥斯本(Ozzy Osbourne)——欧美十大高估歌手
二人梭哈
什么是小脑前下动脉(Anterior Inferior Cerebellar Artery)?
我应该知道康涅狄格州的什么(What Should I Know About Connecticut)?
- 热评文章
- 最新评论
-
- 最近访客
-
- 站点信息
-
- 文章总数:261580
- 页面总数:9
- 分类总数:1
- 标签总数:0
- 评论总数:0
- 浏览总数:74382