c++系列文章(1):signed和unsigned

本文探讨了C++中signed和unsigned类型的区别。signed类型能够表示正负数值,其负数范围比正数多1,这是因为C++使用补码表示负数。在计算时,signed类型遵循补码规则,避免了原码和反码带来的问题。同时,文章提醒在使用char类型时要注意其在不同环境中可能为signed或unsigned,并警告混合使用signed和unsigned类型可能导致未定义行为。
摘要由CSDN通过智能技术生成

博客链接
  带符号类型(signed)可以表示正数、负数或0,无符号类型(unsigned)仅能表示大于等于0的值。C++标准并没有规定signed类型应该如何表示,但约定了在表示范围内正值和负值的量应该平衡。在计算机内部,signed类型二进制的最高位是符号位,用来表示正负,其余二进制位用来表示数值;unsigned类型的所有二进制位都用于表示数值。

类型 最小值 最小值 大小
char -128(-2^7) 127(2^7-1) 1字节
signed char -128(-2^7) 127(2^7-1) 1字节
unsigned char 0 255(2^8-1) 1字节
short -32768(-2^15) 32767(2^15-1) 2字节
unsigned char 0 65535(2^16-1) 2字节
int -2^31 2^31-1 4字节
unsigned int 0 2^32-1 4字节
long -2^63</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值