long、int、short类型数据占用内存大小是由什么决定?请详细解析
A.由用户自己定义 B。由c语言编译系统决定
选择哪一个,请详解
long、int、short类型数据占用内存大小是由计算机字长和编译程序决定的。
常用的字长为8位、16位、32位和64位。字长为8位的编码称为字节,是计算机中的基本编码单位。如一个 32 位的字长,可以表示从0至2的32次方减1的无符号整数值,或者表示从负的2的32次方至2的32次方减1的有符号整数值。特殊的算术指令,对字长中的位使用不同的解释,以此作为浮点数。
编译程序属于采用生成性实现途径实现的翻译程序。它以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。
因此,计算机字长提供了硬件计算精度的支持,编译程序则提供了源程序到机器码的转换。
扩展资料:
字长单位可能被应用到:
1、整数:计算机处理的整数值通常可以有若干种不同的长度,但是其中总有一种正好是该构架的字长。如果有的话,其他的整数长度很可能是字长的倍数或分数。小尺寸的整数尺寸通常是为了提高存储效率;当它被加载处理器时,它经常被转换成字长尺寸的形式。
2、浮点数:计算机处理的浮点数通常是一个字长或字长的倍数。
3、地址:计算机处理的存储器地址必须有足够的尺寸,以便可以表示需要的数值范围,但是又不能过大。经常使用的尺寸是字,不过也可以是字的倍数或分数。
4、寄存器:处理器寄存器根据它要处理的数据类型被设计成适当的尺寸,例如:整数、浮点数、地址。许多计算机构架使用通用”寄存器,它们可以存储任何类型的数据,可以允许存储哪怕是最大的数据类型。它们的尺寸通常是其构架的字长。
参考资料来源:百度百科-数据类型
参考资料来源:百度百科-字长
参考资料来源:百度百科-编译程序
long、int、short类型数据占用内存大小是由什么决定
long、int、short类型数据占用内存大小是由计算机字长和编译程序决定的。常用的字长为8位、16位、32位和64位。字长为8位的编码称为字节,是计算机中的基本编码单位。如一个 32 位的字长,可以表示从0至2的32次方减1的无符号整数值,或者表示从负的2的32次方至2的32次方减1的有符号整数值。特殊的...
...以下关于long、int和short类型数据占用内存大小的叙述中正确的是_百...
原因是,标准 C语言 规定了 类型 “long int“ (4个字节)和 “short int“ (2个字节), 但没有规定 int, int 是 long 还是 short 由C语言编译系统自己决定(4 个字节 还是 2个字节)。
C语言中不同的数据类型的长度和什么有关
和编译器有关。每种类型占用的字节数,是和编译器直接相关的,也就是常说的编译器的字长。以整型系列的类型,char, short, int, long为例:1 16位字长:对于16位编译器,char占1字节,short占2字节,int占2字节,long占4字节。2 32位字长:对于32位编译器,char 占1字节,short占2字节,int占...
在c语言中不同数据类型的长度是由什么决定的
归根结底都是A。或者说是编译器。
求, c语言中所有常见的数据类型(如short,float,int,char,等等)在内存...
字符型 char 1 字节 整型 int 2 字节 short 2 字节 长整型 long 4 字节 单精度 float 4 字节 双精度 double 8 字节
求C语言中int ,long int,char,float,short,DWORD,WORD,BYTE,byte的...
变量占用内存字节由操作系统决定,64位系统中,long占用8字节,……32位操作系统中,int,long占用4字节,short占用2字节……16位系统中,int占用2字节,……数字3占用多少,和你声明的的类型有关,在32位系统中,将3赋值给short型变量,他就占用2个字节,如果赋值给int型,他就占用4个字节 可以用...
在C语言中,double、long、unsigned、int、char类型数据所占字节数
在C语言中,不同数据类型所占用的内存字节数取决于编译器的位宽。对于16位编译器,char类型占用1个字节,指针变量char*占用2个字节;short int和int占用2个字节,unsigned int同样为2个字节;float占4个字节,double则需要8个字节;long和unsigned long各有4个字节。而对于32位编译器,char和指针char*...
int整型占2字节。short占2字节。long占2字节。那为什么说整型数据占...
我想你是搞错啦,如果整形是四个4节的话,那么int型就是4个字节,short型是2个字节,long型就是4个字节。数据类型占多少个字节是根据体系结构决定的,如16位机器int是16位,32位机器int就是32位。所以脱离实际硬件条件单纯谈论数据类型,是没有确切答案的。这个问题我在上学时也纠结了很久,不同的...
c语言计算int型数据的字长,求大神详细解释
如果是64位主机,int占64位,但这不是一定的,还要看编译器类型等因素。在C语言中,double、long、unsigned、int、char类型数据所占字节数和机器字长及编译器有关系: 所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI\/ISO制订的):sizeof(short int)<=sizeof(...
c语言类型所占字节
它们所占字节的大小是由编译器的实现决定的,但它们常用的大小一般是固定的。下面是C语言基本数据类型所占字节的表格:类型 | 存储大小(字节)--- | ---char | 1short | 2int | 4long | 4 或 8float | 4double | 8long double | 16可以看出,char类型所占字节最少,只有1个字节;而long...