我已经用 C++ 编程有一段时间了,我对大部分内容都非常熟悉。我从未理解的一件事是“长”数据类型。
我用谷歌搜索了它,但我仍然不知道它是做什么用的。我发现一些页面说它与 int 具有相同的大小和相同的范围。那么使用它有什么意义呢?
我在这里发现了另一个与此相关的堆栈溢出问题:long 和 int 数据类型之间的区别 https://stackoverflow.com/questions/900230/difference-in-long-vs-int-data-types-in-c
而且似乎两者之间的唯一区别是有时不同系统上的大小不同。这是否意味着在 64 位机器上使用 long 的应用程序将无法在 32 位机器上运行?如果是这样,那么根本不使用它们不是更好吗?
我还注意到称为“long int”甚至“long long”的东西!它是数据类型还是修饰符?
它依赖于编译器。我的标准 fu 有点生疏,但我相信它的定义如下:
char <= short <= int <= long <= long long
where:
char >= 8 bits
short >= 16 bits
int >= 16 bits
long >= 32 bits
long long >= 64 bits
这意味着它是完全有效的char = short = int = long = long long = 64bits
事实上,一些 DSP 的编译器就是这样设计的。
这强调了实际的重要性阅读你的编译器文档.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)