什么是签名字符? [复制]
Posted
技术标签:
【中文标题】什么是签名字符? [复制]【英文标题】:What is signed char? [duplicate] 【发布时间】:2014-02-27 23:32:29 【问题描述】:我了解signed
和unsigned int
的含义。但是signed char
对我来说没有任何意义。
还有为什么signed and unsigned int
占用相同的空间。 Signed int
应该占用更多空间,因为它可以包含负数和正数。
提前致谢。
【问题讨论】:
关于整数问题,都是关于数字的范围。检查有符号和无符号整数的范围。 char不是字母,是1字节整数,默认带符号。signed char
代表 -128 ~ 127。unsigned char
代表 0 ~ 255。signed int
代表 -2,147,483,648 ~ 2,147,483,647 和 unsigned int
代表 0 ~ 4,294,967,2 ) 系统(在 Microsoft Visual Studio 20xx 中)。它们是相同大小的数字,对吧?
【参考方案1】:
符号占用一位。
因此,无符号字符的值可以是 0 到 255,而有符号字符的值可以是 -128 到 127。
所以有符号和无符号的位数相同,可以有相同数量的值,但有符号值可以表示负值,但不能表示正值。
【讨论】:
实际范围在CHAR_BIT
大于 8 和/或负数未在二进制补码中表示的地方有所不同。以上是关于什么是签名字符? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
Python方法签名中的正斜杠“/”是啥意思,如help(foo)所示? [复制]
Python 方法签名中的 ->(破折号大于箭头符号)是啥意思? [复制]