当前位置:首页 > C++知识 > 正文内容

unsigned

亿万年的星光3年前 (2023-02-04)C++知识23237

在一些代码中,经常能看到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。

扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:

相关文章

【数据结构】队列—基本操作

【数据结构】队列—基本操作

一、C++实例分析       C++队列queue模板类的定义在<queue>头文件中,queue 模板类需要两个模板参数,一个是元素类型,一个容...

指针(一):基础用法

1.定义什么是指针,简单来说:“指针就是地址”。2.指针变量的定义指针变量定义形式:  类型说明符  *变量名其中,*号表示指针变量。变量名即为定义的指针变量名,类型说明符表示该指...

取模运算总结——数论

编程竞赛有相当一部分题目的结果过于庞大,整数类型无法存储,往往只要求输出取模的结果。例如(a+b)%p,若a+b的结果我们存储不了,再去取模,结果显然不对,我们为了防止溢出,可以先分别对a取模,b取模...

【数论】组合数学—容斥原理

【数论】组合数学—容斥原理

概念在计数时,必须注意没有重复,没有遗漏。为了使重叠部分不被重复计算,人们研究出一种新的计数方法,这种方法的基本思想是:先不考虑重叠的情况,把包含于某内容中的所有对象的数目先计算出来,然后再把计数时重...

树的存储与遍历—顺序存储

顺序存储使用数组来存储二叉树节点,通过数组下标表示节点间的父子关系,一般适用于完全二叉树。1.存储规则根节点存储在索引 0 位置对于索引为 i 的节点:左子节点索引:2*i + 1右子节点索引:2*i...

求阶乘的方法

1.普通求法#include<iostream> using namespace std; int main(){ int sum=1;...