unsigned
在一些代码中,经常能看到unsigned这种数据类型,比如下面这样的。
#include<iostream> using namespace std; int main(){ unsigned int x; int y; cin>>x>>y; cout<<x<<" "<<y; return 0; }那么unsigned int 和普通的int 有什么区别呢?
#include<iostream> using namespace std; int main(){ int i=2147483647; //32位int范围 unsigned int j=4294967295; //32位 unsigned int范围 printf("%d %d %d\n",i,i+1,i+2); printf("%u %u %u\n",j,j+1,j+2); return 0; }输出结果:
2147483647 -2147483648 -2147483647 4294967295 0 1
由以上结果可知,unsigned int溢出后数值回到“起始点”0,而int溢出后数值回到“起始点”-2147483648。
.jztagtree{max-height:85vh;right:0px}.jzDown{top:10vh}.jztagtree li a{background-color:#448EF6}.jztagtree li a:before{border-right:10px solid #448EF6}.jztagtree li a:hover{background:#0045a6}.jztagtree li a:hover::before{border-right:10px solid #0045a6}
$("#jztoc").toc({content: ".single", headings: "h1,h2,h3"});