您的位置 首页 > 科技

无符号整型多少位 c语言无符号整型代表的是什么?

无符号整型多少位

无符号整型多少位 c语言无符号整型代表的是什么?

c语言无符号整型代表的是什么?

c语言无符号整型代表的是什么?

C语言中,无符号整型数是不带正负表示符号的整型数。C语言在计算机里编译时数都是用二进制表示的,如果最左边这一位不用来表示正负,而是和后面的连在一起表示整数,那么就不能区分这个数是正还是负,就只能是正数,这就是无符号整型数。

无符号整型数常用于表示地址、索引等正整数,它们可以是8位、16位、32位、64位甚至更多。在一些不可能取值为负数的时候,可以使用无符号整型数,在一些底层的嵌入式编程的数据一般都是无符号的。

扩展资料:

整型有无符号(unsigned)和有符号(signed)两种类型,在默认情况下声明的整型变量都是有符号的类型(char有点特别),如果需声明无符号类型的话就需要在类型前加上unsigned。

无符号整型和有符号整型的区别就是无符号类型可以存放的正数范围比有符号整型中的范围大一倍,因为有符号类型将最高位储存符号,而无符号类型全都储存数字。比如16位系统中一个int能存储的数据的范围为-32768~32767,而unsigned能存储的数据范围则是0~65535

16位整型符号的范围?

C语言中16位整型数据的取值范围。

1. 无符号16位整型数据

对于无符号(unsigned)型数据,存储单元中全部二进位(bit)都用作存放数本身,而不包括符号。所以对于16位整型,取值范围如下:

0000 0000 0000 0000 到 1111 1111 1111 1111

对应的十进制数为0到65535(即216-1)。

所以,无符号16位整型数据的取值范围是0到65535。

说明:无符号整型变量只能存放不带符号的整数,如123、4567等,而不能存放负数。

2. 有符号16位整型数据

对于有符号(signed)整型,存储单元中最高位代表符号位:0为正,1为负。

a)当最高位为0,即代表正数时,取值范围如下:

0000 0000 0000 0001 到 0111 1111 1111 1111

对应的十进制数为1到32767(即215-1)。

b)当最高位为1,即代表负数时,取值范围如下(以补码形式表示):

1000 0000 0000 0000 到 1111 1111 1111 1111

对应的十进制数为-32768(即-215)到-1。

所以,有符号16位整型数据的取值范围是-32768到32767。

相关文章