C++笔记关于unsigned无符号型

数据类型 int char默认是有符号型的

加上unsigned后就变成了无符号型

unsigned的类型只能是整型和字符型

#include 
using namespace std;

int main(){
int a=-1;
cout<

char和int的无符号型-1输出结果不一样,char占用1字节,也就是8位,int占用4字节,也就是32位

#include 
#include 
using namespace std;

int main(){



bitset<32> a(-1);//将-1转换为2进制

cout<

11111111111111111111111111111111哪来的?

-1的补码就是1的原码的反码加1

1的原码00000000000000000000000000000001

1的反码11111111111111111111111111111110

1的反码加1就是11111111111111111111111111111111

char同理,只不过位数从32位变成了8位

你可能感兴趣的:(C++基础知识笔记,c++,c语言,开发语言)