The number of bits in an integer in C is compiler and machine dependent. What is meant by this? Does the number of bits in an int vary with different C compilers and different processor architecture? Can you illustrate what it means?
问问题
1206 次
2 回答
2
这篇维基百科文章提供了一个很好的概述:http://en.wikipedia.org/wiki/Word_(data_type)
诸如整数之类的类型在硬件中表示。硬件发生变化,某些类型的大小也会发生变化。类型中的位越多,可以存储的数字越大(对于整数)或更高的精度(对于浮点类型)。
有一些类型专门指定位数,例如int16
.
于 2013-10-08T08:25:50.740 回答
2
它的确切含义是它所说的以及您用自己的话所说的。
例如,在某些编译器和某些平台上,anint
是 32 位,而在其他编译器和平台上,anint
是 64 位。
我记得很久以前当我在 Commodore Amiga 上编程时,有两个不同的制造商提供了两种不同的 C 编译器。在一个编译器上,anint
是 16 位,而在另一个编译器上,anint
是 32 位。
您可以使用来确定编译器上sizeof
有多少字节。int
于 2013-10-08T08:27:02.893 回答