gpt4 book ai didi

c - 如何在 64 位系统上限制 long int 等变量类型的大小?

转载 作者:太空狗 更新时间:2023-10-29 15:28:24 25 4
gpt4 key购买 nike

因此,long int 在 32 位系统上是 32 位,而在 64 位系统上是 64 位。现在,我正在 32 位系统上编写代码,没有处理过溢出问题。如果我在 64 位系统上运行相同的代码,我所有的 long 变量将不必要地占用内存大小的两倍,这是一种浪费。那么如何限制64位系统上的变量大小。

例如,我有一个变量long long int Count。现在 Count 在我的设计中最多可以保存 63 位值。如果我在 64 位系统上运行相同的代码,Count 将是 128 位,但根据逻辑,剩余的 64 位将被浪费。所以,我想确保 Count 在 64 位系统上也只占用 64 位

最佳答案

So, long int on 32-bit system is 32 bit & on 64-bit system is 64 bit.

不一定。它们可能是 64 位的。或者它们可以是 32 位的。

So how to restrict the variable size on 64-bit system.

您应该使用 stdint.h 中的 int32_t,而不是使用 C 中的原始默认类型,例如 long。与 long 不同,它是完全可移植的并且具有确定的大小。

关于c - 如何在 64 位系统上限制 long int 等变量类型的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44537476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com