单片机交流
直播中

吴湛

9年用户 869经验值
擅长:417804
私信 关注
[问答]

请问一下用C语言单片机编程为什么总是用无符号的数据类型来定义?

请问一下用C语言单片机编程为什么总是用无符号的数据类型来定义?

回帖(1)

钱敏

2021-10-14 11:30:34
char型可以表示数的范围是-128到127,所占位数是8位
int型可以表示数的范围是-32768到32767,所占位数是16位
假如用有符号的数据类型表示,如果你要表示的数是128,那你就得定义int型,用了16位。
unsigned char型可以表示数的范围是0到255,所占位数是8位
int型可以表示数的范围是0到65535,所占位数是16位
假如用无符号的数据类型表示,如果你要表示的数是128,那你定义unsigned char型就可以了,只用了8位。
主要原因是:多数情况下我们都不需要运用到负数,单片机的内存是有限的,这样可以节省内存。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分