C语言字符数占几个字节,又是多少位。

如题所述

这个要看字符数是什么数据类型,可以用sizeof(类型)操作符来测试字节数。
1、英文字母:如果是char 型,那么是占用1个字节,8位。如果是string型,应该是两个字节,16位,因为末尾还有个\0字符。
比如:
char c = 'a';//它占用一个字符
char c[] = "a";//占用两个。
char c[] = "abcde";//占用4+1 = 5 个,结尾有一个'\0'
2、数字:有很多种类,从小到大分别为:
short、int、float、long、double
字节为:1个、2个、4个、8个、8个
位数为:8位、16位、32位、64位、64位
3、汉字:理论上说,一个汉字占用两个字节,16位。比如:中国,就占用4个字节,例如:
char c[] = "中国";//占用4+1 = 5个字符
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-12-24
ASCII
一个英文字母,数字-----占7/8字节,就是7个2进制位,第八个有其他用,比如奇偶校验,因此可以算占一个字节。(8个Bit位)
一个中文字-------占二个字节
整数要根据类型,一般是极其的字长。比如16位机整数就是16位Bit,两个字节。32位机就是4字节。还有int64
类型的整数。
至于实数在C中,有32位(float)和64位(double)之分。其他语言中有类型80位的,叫扩展精度实数.主要是在cpu内部的扩展精度实数寄存器,是80位的。保证在double实数运算是不损失精度。
第2个回答  2019-09-30
对于几乎所有的机器,1字节均为8位,这是字节的标准定义,至少在衡量存储单位时是这样。但是C语言有自己的定义:一个字节为char类型占用的位(bit)数。
第3个回答  2009-05-26
一个字符一个字节 共8位(bit)
可以用sizeof(类型)来测试本回答被提问者采纳
第4个回答  2009-05-26
一个字节 8位
相似回答