整型的赋值超出该类型的取值范围
生活随笔
收集整理的這篇文章主要介紹了
整型的赋值超出该类型的取值范围
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
對(duì)于unsigned類(lèi)型來(lái)說(shuō),編譯器必須調(diào)整越界值使其滿(mǎn)足要求。編譯器會(huì)將該值對(duì)unsigned類(lèi)型的可能取值數(shù)目求模,然后取所得值。
例如:8位的unsigned char,取值范圍是0~255,如果賦值超出這個(gè)范圍的值,那么編譯器將會(huì)取該值對(duì)256取模后的值。
此外,C++中,把負(fù)數(shù)賦值給unsigned對(duì)象是完全合法的,其結(jié)果是該負(fù)數(shù)對(duì)該類(lèi)型的取值個(gè)數(shù)求模后的值。
對(duì)于將超過(guò)取值范圍的值賦給signed類(lèi)型時(shí),由編譯器決定實(shí)際賦的值。在實(shí)際操作中,很多的編譯器處理signed類(lèi)型的方式和unsigned類(lèi)型類(lèi)似。
?
注意:取模其實(shí)就是截取低xxx位,對(duì)于8位的unsigned char來(lái)說(shuō),如果超出范圍,即截取低8位。
轉(zhuǎn)載于:https://www.cnblogs.com/momo-unique/articles/4375381.html
總結(jié)
以上是生活随笔為你收集整理的整型的赋值超出该类型的取值范围的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 浅淡HTML5移动Web开发
- 下一篇: zend studio 函数不提醒 小黄