win32平台下,一个字节还是8位的吗?

来源:百度知道 编辑:UC知道 时间:2024/05/30 19:35:15
c语言中介绍一个字节是8位。
此话是针对某平台说的(比如16位的DOS或UNIX),还是任何平台下一个字节始终是8位?哪怕是64位的操作系统?
使用unicode就必须注明为宽字符?
我并不是问一个INT占多少个字节。而是问一个字节的2进制位数是多少。一楼答非所问
另外如果是WIN32下,使用宽字符也得是2个字节?

这要看编译器。

例如turbo c就是16位平台2B,32平台4B。

具体使用每一个开发平台是,用sizeof(int)测试一下就知道了。

我用VC6.0运行下面例子结果为4.

#include <stdio.h>

void main()
{
printf("%d\n",sizeof(int));
}

首先要清楚 16位,32位,64位 这些简称的意义,它们指的是内存地址的二进制位数的最大值,16位即内存地址范围是 0x0000 - 0xFFFF ,32位,64位类推。
我们同时说的16位机,32位机也是如上所述同一个概念。
关于字节的定义,和系统的软硬件平台有关,一般32位机及以上一个字节都是8个二进制位,16位机可能会有变化