整数中的位数

时间:2013-10-08 08:22:20

标签: c compiler-construction

C中整数的位数取决于编译器和机器。这是什么意思? int中的位数是否因C编译器和不同的处理器架构而异?你能说明它的含义吗?

2 个答案:

答案 0 :(得分:2)

这篇维基百科文章概述了http://en.wikipedia.org/wiki/Word_(data_type)

整数等类型用硬件表示。硬件更改,某些类型的大小也会更改。类型中的位越多,可以存储的数字越大(对于整数)或更高的精度(对于浮点类型)。

有些类型专门指定位数,例如int16

答案 1 :(得分:2)

这正是它所说的和你用自己的话说的话。

例如,在某些编译器和某些平台上,int为32位,在其他编译器和平台上,int为64位。

我记得很久以前当我在Commodore Amiga上编程时,有两个不同的C编译器来自两个不同的制造商。在一个编译器上,int为16位,而在另一个编译器上,int为32位。

您可以使用sizeof来确定编译器中int的字节数。