lcb761085384280 发表于 2013-3-18 20:07:48

c*51的数据类型

以无符号字符类型unsigned char与有符号字符类型signed char为例,怎么理解他们的值域的不同表示?求解答

{:loveliness:}

HeP028 发表于 2013-3-18 20:18:28

这个都是设计者规定的,需要死记硬背,就像古人规定你就是人1样

lcb761085384280 发表于 2013-3-19 20:14:18

HeP028 发表于 2013-3-18 20:18 static/image/common/back.gif
这个都是设计者规定的,需要死记硬背,就像古人规定你就是人1样

应该可以理解的吧!不然背的东西太多了!

unifax001 发表于 2013-3-20 08:50:39

其实一样!数字在内存中是依补码形式保存的 至于正负数字 在于你使用的时候分辨。

bbssilverkey 发表于 2013-3-20 08:56:58

那个英文不是写着那个意思么?就好像人家写eat,你还要怎么理解?

mengfc 发表于 2013-3-20 13:58:43

unsigned char 是无符号8位,值域就是0~2^8-1,即0~255
signed char 是有符号8位,去掉一位符号位,值域就是-2^7~2^7-1,-128~127
同理unsigned int 值域就是0~2^16-1,signed int 值域就是-2^15~2^15-1

绿茶山人 发表于 2013-4-22 15:04:33

我发现楼主总是喜欢问这类问题。6楼已经说明白了,也没必要纠缠这种问题,工程和学术是有区别的。
页: [1]
查看完整版本: c*51的数据类型