char, signed char,unsigned char, short int unsigned short int, int数据类型取值问题
发布日期:2021-06-28 22:05:12 浏览次数:2 分类:技术文章

本文共 469 字,大约阅读时间需要 1 分钟。

  char, signed char,unsigned char, short int unsigned short int, int 这些数据类型是大家平时工作中一定会用到的,今天不知咋回事,看到这些数据类型时突然产生了一个疑问:数据类型要么是有符号的,要么是无符号,为什么每种数据类型会多一个缺省的呢?查找资料说是为了移植方便。怎么个方便法呢?看如下取值类型:

 

类型                    最小范围

char                   0 ~ 127
signed char        -127 ~ 127
unsigned char    0 ~ 255

 

  从以上取值范围你是否发现了什么? 默认的char的取值范围刚好是signed char和 unsigned char的交集,这便是方便之处了,倘若你定义的类型是char,无论移植的机器char 的取值范围是 -127 ~ 127还是 0 ~ 255,你使用 0 ~ 127都是绝对没问题的。至于显示的定义为有符号,或无符的,主要是为了性能问题。

  从这里我们可以看得出语言设计者的精妙之处。跨平台性,效率性,我们的编码是否有全盘的考虑过这些呢?

转载地址:https://blog.csdn.net/yfh1985sdq/article/details/5648970 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:神奇的 ## 符号
下一篇:IoCallDriver

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年04月25日 17时44分34秒