12000,共5位,每位用ASCII码来表示的话,各占一个字节,所以12000的ASCII码要占用5个字节;
12000介于8192(2的13次方)和16384(2的14次方)之间,说明将12000是用14位二进制来表示的,即占2个字节;
综上,整数12000分别用asc2码和二进制文件形式存放,各自所占储存空间为5个和2个字节。
首先所有数据对于计算机来说都是二进制
但是,数据实质在于 “数据类型” 和 “表现方式”
12000用字符串表示可以是5个字节也可以是2个字节,更可能是无限个。
用整形来表示就是4个字节32位,(系统和编译器决定)
五个字节:
char x[5]="12000";//x=12000
int y=0,i=0;
for(;i<5;y=(y+x[i++]-'0')*10);
//y==12000
两个字节:
int y=0;
char x[2];
x[0]=12000&0xff;
x[1]=12000>>8;
y=(int)(x[1]<<8)+x[0];
//y==12000