为了账号安全,请及时绑定邮箱和手机立即绑定

C 语言 char 是占几个字节 多少位?

C 语言 char 是占几个字节 多少位?

C++
吃鸡游戏 2019-02-04 00:17:10
问题描述在C Primer Plus这本书中产生几个疑问,原文内容大概如下:字节是计算机常用的存储单位,对于所有的机器,1字节均为8位,这是字节标准定义,至少在衡量存储单位是这样的(但是,C 语言对此不同的定义)一般而言 C 语言会保证 char类型足够大,以储存系统(实现C语言的系统)的基本字符集.我的疑问是char 在C中一定是8位? char 与 byte 什么关系?期待的结果是给出结论同时给出参考内容,以及思考过程,这比结论更有价值.
查看完整描述

1 回答

?
波斯汪

TA贡献1811条经验 获得超4个赞

  1. 标准规定char最少8位

  2. 而且一般就是8位,POSIX也要求char必须是8位

  3. 你当然可以实现一个c编译器,将char实现为16位或更多,但是相应的其他整数类型也要调整,而且这样一来与POSIX标准也不再兼容

  4. 所以一般没人这么干

  5. 所以一般把char当成8位来用不会有什么问题,特殊情况下为了保险起见可以检查CHAR_BIT


查看完整回答
反对 回复 2019-02-04
  • 1 回答
  • 0 关注
  • 6133 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信