我真的搞不清楚你到底想问什么而且你有的表述也不准确严谨
所以只好把基本的单位先说下。
字节(byte)这是计算机中数据类型最基本的单位了8bit 组成1byte
字(word)两个byte称为一個word,所以字大小应该是16位bit共两字节
在C语言中,每种数据类型都有其存储长度而且在特定的平台和特定的编译器下是不一样的。
unsigned char 无符号嘚字符型 占1byte 即8位 它主要是为了能够兼容扩展ASCII码由于 char 由8位表示表示范围为 -128 - +127,无法表示带上扩展ASCII码总共256个字符所以如果把 8位中的最高位符号位也用来计数就可以正好表示256个字符,unsigned char 表示范围为 0 - 255 正好256个数可以对应包含扩展ASCII码在内的共计256个ASCII字符
汉字在计算机中存储是使用机内码(┅种数字编号)来存储的而常用汉字不过是几万个,如果用16位比特(即2的16此方等于65536)就可以表示了所以汉字字符存储使用了两个字节。每两个字节即16bit对应一个汉字
假如你使用的不是 visual studio 编译器 或者不是在win32环境下编程,以上的陈述可能就不对我建议你查看一下 可以使用int i = sizeof(char)或者
sizeof(int)来看看i的值,如果i == 4表示一个当前的数据类型占四个字节