码迷,mamicode.com
首页 > 编程语言 > 详细

C语言:signed和unsigned的区别

时间:2020-04-06 15:34:07      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:整数   ref   get   bsp   符号   参考   类型   语言   无符号   

  参考博客:https://blog.csdn.net/wen381951203/article/details/79922220

signed和unsigned用于修饰整数类型(包括char,从ANSI C89标准开始支持)

signed表示有符号,unsigned表示无符号。对应的有符号数的最大取值要比无符号的小约一半,因为最高一位被用来表示符号

默认的int、short、long、long long为有符号数,也就是说,int等价于signed int,short等价于signed short,long等价于signed long,long long等价于signed long long,但是char本身是signed char还是unsigned char,取决于语言的实现(编译器)

范围列表如下:
signed char:[-2^7, 2^7)即[-128, 128)
unsigned char:[0, 2^8)即[0, 256)
signed n位整数:[-2^(n-1),2^(n-1))
unsigned n位整数:[0, 2^n)
注意整数类型占多少空间是不确定的,只能保证sizeof(shor)<=sizeof(int)<=sizeof(long)。一般32位平台上,int和long为32位,short为16位,long long为64位

 

C语言:signed和unsigned的区别

标签:整数   ref   get   bsp   符号   参考   类型   语言   无符号   

原文地址:https://www.cnblogs.com/Mr-choa/p/12642051.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!