哪种类型的变量可以包含1,000,000,000(十进制数)占用最多的内存空间?
答案 0 :(得分:3)
Java字符串。引擎盖下Java String包含一个包含3个字段的对象,其中一个字段指向包含字符的单独数组对象。当然,Java字符串由16位字符组成。
如果您担心内存使用超过所有其他条件,请不要使用Java。但是对于大多数应用程序来说,内存使用是您最不关心的问题。
值得注意的是,1,000,000,000可以使用Java int
来表示,它与C有符号或无符号(32位)整数的大小相同。
此外,C int
不一定大到足以代表1,000,000,000。在某些平台上,int
为16位,C标准允许这样做。
答案 1 :(得分:1)
老实说,我真的不想直接回答这个问题,所以你可以在这里看看:
如何在二进制和十进制之间进行转换可能很有用:
答案 2 :(得分:1)
C标准没有说明许多存储要求。事实上,你可以:
int
,需要32个字节才能存储任何内容(参见@nonnb的评论)wchar_t[]
)(显然所有GNU实现都如此)char
的C实现(必须在32位字节的系统上)