c语言中整型数据中,有符号与无符号是什么意思,能举例说明下么?

Python018

c语言中整型数据中,有符号与无符号是什么意思,能举例说明下么?,第1张

符号就是可以表达负数有符号位

无符号就是不能表示负数没有符号位

如基本整型 (int) 数的范围为-2 147 483 648~2 147 483 647 即-2^31~(2^31-1)

无符号整型(unsigned int) 数的范围为0~4 294 967 295 即0~(2^32-1)

通俗一点就是输出一个可以输出负数一个不行

望采纳,谢谢

我简单的解释下,希望你听明白。

一个数据在计算机中是按2进制存储的,在计算机中就是8个0或1组成的,比如0,在计算机中就是

00000000。这种数字的第一位是标示符号的,如果是0就是正数,如果是1就是负数。

如果是无符号型的数据,第一位就会默认为0,并且不能更改。有符号则没有严格限定。

这样造成的结果就是无符号型的数据会在有符号型数据的基础上在正数部分增加一半的取值范围。

比如说整型变量吧。unsigned int 是从0到2的32次方减1,而signed int 是从负2的31次方到正2的31次方减1.

在计算机里,整型变量占用4字节,也就是32位的存储空间。对于有符号数来说,正负号要单独占一位。所以除去符号位以外,数的绝对值就占31位。这就是有符号和无符号的区别。