加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

当CHAR_BIT> 8时,语言标准如何定义uint8_t?

发布时间:2020-12-14 05:45:13 所属栏目:Windows 来源:网络整理
导读:我没有CHAR_BIT的任何平台 8手头. 所以我在文件limits.h中更改了相关的预处理器定义: #define CHAR_BIT 16 /* number of bits in a char */#define SCHAR_MIN (-32768) /* minimum signed char value */#define SCHAR_MAX 32767 /* maximum signed char val
我没有CHAR_BIT的任何平台> 8手头.

所以我在文件limits.h中更改了相关的预处理器定义:

#define CHAR_BIT      16          /* number of bits in a char */
#define SCHAR_MIN   (-32768)      /* minimum signed char value */
#define SCHAR_MAX     32767       /* maximum signed char value */
#define UCHAR_MAX     0xffff      /* maximum unsigned char value */

然后,当包含文件stdint.h时,我希望看到uint8_t不再是一个可行的类型.

但确实如此.

语言标准如何解决这个问题?

解决方法

文件limits.h不是编译器的配置文件;它是一种机制,通过该机制,实施为您提供信息.你的编译器知道char有8位,而uint8_t是unsigned char;它不需要读取limits.h文件来找出它.

如果你想要一个汽车类比,通过你的燃油表锤击钉子不会阻止你运行坦克干.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读