在C语言中,变量类型所占位数和具体的编译环境有关。比如短整形,有的编译环境占四个字节,有的占两个字节;而char类型都是占一个字节。取值的话,就是2的几次方了,和所占字节有关。忘了很多,希望能帮助你。
C语言变量占用字节数与平台有关,在32位平台上,各基本类型占用字节数如下:
1字节=8位,1位即1bit,取值为0或1
bool 1bit
char 1
short 2, int 4, long 4,
float 4,double 8
对应的无符号类型(即加unsigned后)与有符号类型字节数相等
#include
void main()
{
int a,b,c,d,e,f;
a=sizeof(int);b=sizeof(long);
c=sizeof(float);d=sizeof(double);
e=sizeof(char);f=sizeof(short);
printf("各种数据类型占用字长如下: \n");
printf("char: %d个字节\n",e);
printf("short (short int): %d个字节\n",f);
printf("long (long int): %d个字节\n",b);
printf("int: %d个字节\n",a);
printf("float: %d个字节\n",c);
printf("double: %d个字节\n",d);
}
1个字节是8个BIT位这个知道吗?
一个BIT位只能取0或1。8个BIT位为一组,叫一个字节。
INT 就是4个字节,在WINDOWS下,那么4个字节,就是32个BIT位。并且每个BIT位取0或1,那么取值是多少?就可以计算出INT类型的取值范围。