1. 首页 > 电脑手机 >

一个字符占几个字节 c语言一个字符占几个字节

一个字符是多少?

如果你说的“字符”就是指 Java 中的 char,那好,那它就是 16 位,2 字节。

一个字符占几个字节 c语言一个字符占几个字节一个字符占几个字节 c语言一个字符占几个字节


如果你说的“字符”是指我们用眼睛看到的那些“抽象的字符”,那么,谈论它占几个字节是没有意义的。具体地讲,脱离具体的编码谈某个字符占几个字节是没有意义的。

就好比有一个抽象的整数“42”,你说它占几个字节?这得具体看你是用 byte,short,int,还是 long 来存它。

字符是同样的道理,如果你想谈“占几个字节”,就要先把编码说清楚。同一个字符在不同的编码下可能占不同的字节。

就以你举的“字”字为例,“字”在 GBK 编码下占 2 字节,在 UTF-16 编码下也占 2 字节,在 UTF-8 编码下占 3 字节,在 UTF-32 编码下占 4 字节。不同的字符在同一个编码下也可能占不同的字节。

“字”在 UTF-8 编码下占3字节,而“A”在 UTF-8 编码下占 1 字节。(因为 UTF-8 是变长编码),而 Java 中的 char 本质上是 UTF-16 编码。而 UTF-16 实际上也是一个变长编码(2 字节或 4字节)。

如果一个抽象的字符在 UTF-16 编码下占 4 字节,显然它是不能放到 char 中的。换言之, char 中只能放 UTF-16 编码下只占 2 字节的那些字符。而 getBytes 实际是做编码转换,你应该显式传入一个参数来指定编码,否则它会使用缺省编码来转换。

你说“ new String("字").getBytes().length 返回的是3 ”,这说明缺省编码是 UTF-8.

否则,会使用所在操作系统环境下的缺省编码。

通常,Windows 系统下是 GBK,Linux 和 Mac 是 UTF-8.

由于受启动参数及所在操作系统环境的影响,不带参数的 getBytes 方法通常是不建议使用的,最好是显式地指定参数以此获得稳定的预期行为。

一个字符是由一个字节(即8个二进制位)来表示的,不同编码方式、汉字或字母所需字节不同。

1、ASCII 编码:一个英文字母占1个字节。

2、GB 2312 编码/GBK 编码:一个汉字占2个字节。

3、UTF-8:一个英文字母占1个字节,一个汉字占3到4个字节。

4、在UTF-16编码中,字母汉字都占2字节。

5、在UTF-32编码中,任何字符都占4个字节。

也就是说一个字符是2-3个汉字,或者2-8个英文字母。

扩展资料:

汉字,字符,字节,位之间的关系:

1个汉字 = 1个字 = 1个字节

1个字符 = 1个字节 = 8bit(ACSII码下)

1个字符 = 2个字节 = 16bit(Unicode码下)

参考资料来源:

一个字符是一个数字、一个英文字母、一个空格或者一个符号(不是全部符号都是一个字符)```

一个汉字=两个字符

其实你在用的百度就有很好的例子,你在进度搜索中查找一个中文字”我“,转到查找页面后就会发现URL那里 有一段 %CE%D2 这样的字符, 其实CED2 这样的格式就是 "我" 这个中文字的16进制表示了, 英文1 Byte 就是 8 bit 1字节就是8位 电脑是用2制的,二进制单位就是bit 位。 2个16进制就等于8位。 所以中文字符是2个字节存储的。

中文一般使用区位码, 第一个字节表示区,就是数字,符号,英文。。区,第二字节就是这个区的定位 。 要更了解区位码,就查找相关内容吧

像 我 CED2 CE十进制就是206 DE十进制就是210 ,可以理解为去门牌号为206的房间里找第210个房间里的东西,里面就放着一个" 我“字 。大房间里有多个小房间,也许大盒子里放多个小盒子更合适,可以想像铅字排版时,找这些铅字时可能就是这样的方法吧

上面只是汉字字符的存储。

一般来说,英文和数字,只需要 1字节来存储,因为大小写英文A-Za-z加0-9一起都不超过128个。所以用8bit 也就是1 Byte 来存储就够了,这个就是ascii 码 。

似乎你说的字符大小问题可以勉强清晰点了吧?

晕了,搞得自己都把 4bit 当成1 Byte了!

一个字符=一个字节(Byte),1个字节=8个位(bit),一个字=2个字节,一个汉字2个字节,一个英文=一个字节,

一个汉字是两字节,一个字符就是一字节。字节是大小的单位。

一个字符是八个字节吧,好像是的

1个字符等于几个字节

一个字节是一个字母或者是一个符号。一个汉字是两个字节。

但是在使用WORD系统输入汉字时,选择“半角”时,一个汉字占一个字节;选择“全角”时,一个汉字占两个字节。

一般来说,1个UTF-8 字符 占据1个字节,汉字等特殊文字占据两个字节。

对于Unicode来说,1个字符等于两个字节。

一个字符好像是一个字节(1BYTE,8BITs),汉字、日文、全角字符等等所谓“宽字符”是俩字节

一个字符等于多少个字节 而一个汉字又等于多少个字符

解析如下:

一个字符等于一个字节 。一个汉字是两个字节,也就是等于两个字符。

ASCII码:一个英文字母(不分大小写)占一个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值-128,最大值127。如一个ASCII码就是一个字节。

UTF-8编码:一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。中文标点占三个字节,英文标点占一个字节。

Unicode编码:一个英文等于两个字节,一个中文(含繁体)等于两个字节。中文标点占两个字节,英文标点占两个字节。

在计算机中,一串数码作为一个整体来处理或运算的,称为一个计算机字,简称字。字通常分为若干个字节(每个字节一般是8位)。在存储器中,通常每个单元存储一个字,因此每个字都是可以寻址的。字的长度用位数来表示。

扩展资料:

由于字符有ANSI及Unicode两种不同的编码方式标准,因此字符串也分为2种:

字符串(ANSI):在内存中,如果“字符”是以 ANSI 编码形式存在的,一个字符可能使用一个字节或多个字节来表示,我们称这种字符串为 ANSI 字符串或者多字节字符串。

字符串(Unicode):在内存中,如果“字符”是以在 Unicode 中的序号存在的,那么我们称这种字符串为 Unicode 字符串或者宽字节字符串。

一个字符等于一个字节 。

一个汉字是两个字节,也就是等于两个字符。

ASCII码:一个英文字母(不分大小写)占一个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值-128,最大值127。如一个ASCII码就是一个字节。

UTF-8编码:一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。中文标点占三个字节,英文标点占一个字节。

Unicode编码:一个英文等于两个字节,一个中文(含繁体)等于两个字节。中文标点占两个字节,英文标点占两个字节。

在计算机中,一串数码作为一个整体来处理或运算的,称为一个计算机字,简称字。字通常分为若干个字节(每个字节一般是8位)。在存储器中,通常每个单元存储一个字,因此每个字都是可以寻址的。字的长度用位数来表示。

扩展资料

字符是可使用多种不同字符方案或代码页来表示的抽象实体。例如,Unicode UTF-16 编码将字符表示为 16 位整数序列,而 Unicode UTF-8 编码则将相同的字符表示为 8 位字节序列。微软的公共语言运行库使用 Unicode UTF-16(Unicode 转换格式,16 位编码形式)表示字符。

电脑和通讯设备会使用字符编码的方式来表达字符。意思是会将一个字符指定给某个东西。传统上,是代表整数量的位元序列,如此,则可透过网络来传输,同时亦便于储存。两个常用的例子是ASCII和用于统一码的UTF-8。

在计算机中,一串数码作为一个整体来处理或运算的,称为一个计算机字,简称字。字通常分为若干个字节(每个字节一般是8位)。在存储器中,通常每个单元存储一个字,因此每个字都是可以寻址的。字的长度用位数来表示。

参考资料

在GB2312和GBK字符集中,一个汉字是两个字节。在unicode中,一个汉字是4个字节。一个汉字就是一个字符。

字符是指计算机中使用的字母、数字、字和符号,包括:1、2、3、A、B、C、~!·#¥%……—*()——+等等。字符是可使用多种不同字符方案或代码页来表示的抽象实体。

字节(Byte /bait/ n. [C])是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位,[1] 也表示一些计算机编程语言中的数据类型和语言字符。

扩展资料

1、ASCII码中一个英文字母(不分大小写)占一个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值-128,最大值127。如一个ASCII码就是一个字节。

2、UTF-8编码中一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。中文标点占三个字节,英文标点占一个字节

3、Unicode编码中一个英文等于两个字节,一个中文(含繁体)等于两个字节。中文标点占两个字节,英文标点占两个字节

参考资料

字节:计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位,也表示一些计算机编程语言中的数据类型和语言字符。

字符:人们使用的记号,属于抽象意义上的符号。 例如:'1', '中', 'a', '$', '¥', ……

ASCII码:一个英文字母(不分大小写)占一个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数。换算为十进制 ,最小值-128,最大值127。如一个ASCII码就是一个字节。

UTF-8编码:一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。中文标点占三个字节,英文标点占一个字节。

Unicode编码:一个英文等于两个字节,一个中文(含繁体)等于两个字节。中文标点占两个字节,英文标点占两个字节。

简单来说,在word中,一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。

扩展资料:

由于字符有ANSI及Unicode两种不同的编码方式标准,因此字符串也分为2种:

字符串(ANSI):在内存中,如果“字符”是以 ANSI 编码形式存在的,一个字符可能使用一个字节或多个字节来表示,我们称这种字符串为 ANSI 字符串或者多字节字符串。

字符串(Unicode):在内存中,如果“字符”是以在 Unicode 中的序号存在的,那么我们称这种字符串为 Unicode 字符串或者宽字节字符串。

参考资料来源:

字符与字节

1、ASCII码:一个英文字母(不分大小写)占一个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值-128,最大值127。如一个ASCII码就是一个字节。

2、UTF-8编码:一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。中文标点占三个字节,英文标点占一个字节。

3、Unicode编码:一个英文等于两个字节,一个中文(含繁体)等于两个字节。中文标点占两个字节,英文标点占两个字节。

扩展资料

字节是指一小组相邻的二进制数码。通常是8位作为一个字节。它是构成信息的一个小单位,并作为一个整体来参加操作,比字小,是构成字的单位。

在微型计算机中,通常用多少字节来表示存储器的存储容量。

例如,在C++的数据类型表示中,通常char为1个字节,int为4个字节,double为8个字节。

理解编码的关键,是要把字符的概念和字节的概念理解准确。这两个概念容易混淆,我们在此做一下区分:

1、字符人们使用的记号,抽象意义上的一个符号。例如 '1', '中', 'a', '$', '¥' ……

2、字节计算机中存储数据的单元,一个8位的二进制数,是一个很具体的存储空间。例如0x01, 0x45, 0xFA……

参考资料来源:

在我们常见的GB2312和GBK字符集中,一个汉字是两个字节,ANSI字符集中,一个英文字符是一个字节。

至于一个汉字是多少个字符?可以这样说,一个汉字就是一个字符,但它占用了两个英文字符的空间(两个字节)

在unicode中,一个汉字是4个字节,英文字符是2个字节。

上面几位都说错的是,把位和字节弄混了。

一个字节=8个二进制位。

第二个说得对

一个字符=8个字节,一个汉字=2个字符=16个字节

我是计算机专业的啊

一个字符在内存中占一个字节,一个汉字在内存中占两个字节,一个字节是8个二进制位

一个字符=8个字节,一个汉字=2个字符=16个字节

一个字母=1字符

一个字符等于几个字节

一个汉字等于两个字节。

1、字节是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于有八位,也表示一些计算机编程语言中的数据类型和语言字符。

2、ASCII码:一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。如一个ASCII码就是一个字节。

1位”表示为1bit

“1个字节”表示为1Byte

“1个字节”=“8位”

即1Bytes=8bit

因此“4个字节”=4*8位=32位

此外,字母用用1个字节(即8位)进行表示和存储,而一个汉字则使用两个字节(即16位)进行表示和存储。

一个字符等于几个字节

不同的字符所占的字节是不同的。

ASCII码:

一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。如一个ASCII码就是一个字节。

UTF-8编码:

一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。

Unicode编码:

一个英文等于两个字节,一个中文(含繁体)等于两个字节。

扩展资料任何数据类型的数组都需要 20 个字节的内存空间,加上每一数组维数占 4 个字节,再加上数据本身所占用的空间。数据所占用的内存空间可以用数据元数目乘上每个元素的大小加以计算。例如,以 4 个 2字节之 Integer 数据元所组成的一维数组中的数据,占 8 个字节。这 8 个字节加上额外的 24 个字节,使得这个数组所需总内存空间为 32 个字节。

包含一数组的 Variant 比单独的一个数组需要多 12 个字节。

参考资料

不同编码里,字符和字节的对应关系不同,与编码方式有关。

常见的编码字符与字节的对应关系如下:

1、ASCII码中,一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。

2、UTF-8编码中,一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。

3、Unicode编码中,一个英文等于两个字节,一个中文(含繁体)等于两个字节。

4、GBK编码方式是中文占两个字节,英文占1个字节。

扩展资料:

UTF-8是一种很常用的编码方式,正是因为UTF-8的字符数和字节数的换算不固定,导致你无法从UNICODE字符数判断出UTF-8文本的字节数。

UTF-8是一种变长编码,它需要用2个字节编码那些用扩展ASCII字符集只需1个字节的字符。

ISO Latin-1 是UNICODE的子集,但不是UTF-8的子集 8位字符的UTF-8编码会被email网关过滤,因为internet信息最初设计为7位ASCII码。因此产生了UTF-7编码。

UTF-8 在它的表示中使用值100xxxxx的几率超过50%, 而现存的实现如ISO 2022, 4873, 6429, 和8859系统,会把它错认为是C1 控制码。因此产生了UTF-7.5编码。

参考资料来源:

参考资料来源:

参考资料来源:

不同编码里,字符和字节的对应关系不同:

①ASCII码中,一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。

②UTF-8编码中,一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。

③Unicode编码中,一个英文等于两个字节,一个中文(含繁体)等于两个字节。

符号:英文标点占一个字节,中文标点占两个字节。举例:英文句号“.”占1个字节的大小,中文句号“。”占2个字节的大小。

④UTF-16编码中,一个英文字母字符或一个汉字字符存储都需要2个字节(Unicode扩展区的一些汉字存储需要4个字节)。

⑤UTF-32编码中,世界上任何字符的存储都需要4个字节。

一个字节是一个字母或者是一个符号。一个汉字是两个字节。

但是在使用WORD系统输入汉字时,选择“半角”时,一个汉字占一个字节;选择“全角”时,一个汉字占两个字节。

不一样的字符所占的字节是不一样的。

ASCII码:

一个英文字母(不分大小写)占一个字节的位置,一个中文汉字占两个字节的位置。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。如一个ASCII码就是一个字节。

UTF-8编码:

一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。

3.Unicode编码:

一个英文等于两个字节,一个中文(含繁体)等于两个字节。

符号:英文标点占一个字节,中文标点占两个字节。

举例:英文句号“.”占1个字节的大小,中文句号“。”占2个字节的大小。。

1位”表示为1bit

“1个字节”表示为1Byte

“1个字节”=“8位” 即1Bytes=8bit

因此“4个字节”=4*8位=32位

此外,字母用用1个字节(即8位)进行表示和存储,而一个汉字则使用两个字节(即16位)进行表示和存储。

一个字符好像是一个字节(1BYTE,8BITs),汉字、日文、全角字符等等所谓“宽字符”是俩字节

不同的字符所占的字节是不同的。

ASCII码:

一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。如一个ASCII码就是一个字节。

UTF-8编码:

一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。

Unicode编码:

一个英文等于两个字节,一个中文(含繁体)等于两个字节。

一个ascii字符等于一个字节

一个unicode字符相当于两字节。

我们一般用的字母都是一字节。

中文都是两字节

一个字符相当于多少字节。

计算机中一个字WORD是2个字节BYTE,一共16个比特-二进制BIT。

但根据不同字符集编码,字符的长度是不同的,比如常见的utf-8的就是一个字符6字节吧。

一个字节等于8位,一个字符就是一个字节。

中文字符占几个字节??

中文字符都是双字节

1、单字节指只占一个字,是英文字符。双字是占两个字节的,中文字符都占两个字节

计算机中的数据都是以0和1来表示的,其中一个0或者一个1称之为一位,8位称为一个字节(Byte),两个字节称为一个字(Word)(双字节),4个字节称为双字(Dword)(四字节)。

2、单字节的英文是Byte;比特是最小的数值单位,它的英文是Bit。

一个字节包含8个比特,通常计算机初学者接触到的ASCII码就是单字节字符,由于计算机是二进制的,1个比特位只可以表示为0或者1这两种数,那8个比特(一般从右至左)就可以有0~127(2的8次方再减1)的不同的数值表示。

3、双字节字符即是包含了两个字节共16比特。

4、一般比较好理解的就是:英文字母属于单字节字符,而汉字则属于双字节字符。因为英文字母、数字、符号等完全可以用128种不同的数值来表示,而汉字太多则不能,所以才需要扩展到双字节。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息