0

例如,如果我添加一个短整数和一个浮点数据类型,它们会分配相同数量的内存吗?它们有不同的最大值,但也有不同的数据结构,所以我不确定。此外,不同数据类型的数学运算是否需要不同的时间?

4

2 回答 2

2

如果不知道您使用的是哪种语言/硬件,很难准确回答这个问题,但在大多数情况下,不同的数据类型确实会占用不同数量的内存,并且数据类型会影响数学运算的速度。例如,在 Java 和 C# 中,short 是 16 位,float 是 32 位。我希望浮点数学通常比整数数学慢,尽管这可能很复杂,如本文所述。

对于其他语言(例如 C),基本数据类型的大小取决于硬件,因此 int 在某些机器上可能是 32 位,而在其他机器上可能是 64 位。

于 2012-09-14T00:50:59.497 回答
1

我们有数据类型的原因是效率。这包括数据(类型)的大小和处理。

一个char数据类型有 8 位(你也可以这样称呼它,8-bit integer因为数值只是映射到 ASCII 表中的字符)= 256 个可能的值

A32-bit integer有...你猜对了 32 位 = 2³² 可能的值

通过移位或比较这些位来执行数学运算。

更多位 = 更多操作 = 更多时间

参考:http ://en.wikipedia.org/wiki/Data_type

于 2012-09-14T00:53:54.090 回答