一个字符对应10进制0到255中的一个数字,一个字符对应2进制0到11111111中的一个数字,字符的总数不超过255种。字符以2进制的值在内存中存储。我发现1个字节也就是8位2进制的最大值11111111对应10进制的255,这两者应该有关系吧。也就是说2进制0到11111111中的每个数对应10进制0到255中的一个数,对应一个字符。因为字符的总数不超过255种,2进制0到11111110就有255个数,每个数对应一个字符,所以
一个字节(8位2进制)足够放一个字符。一个字符也就对应一个字节。
上面我说的正确吗?希望大家帮忙看看。
恩。我看的是ASCII编码字符,我以为汉字不是字符,一个汉字算一个字符吗?
你是说比如,一个汉字是两个字节,一个汉字可以看成一个字符,所以字符可以是两个字节的吗?
追答一个汉字是两个字节,就是用2个字节的数字来编码,但是编码方式不同,同一个汉字对应的这2个数字是不同的。比如gb2312和gb18030就不同。
字符可以是2个字节,但并不是说所有的字符都是2字节,unicode的编码里的字符有1字节,2字节,4字节不等。建议你去wiki百科里搜索unicode,里面学问可大了。