gpt4 book ai didi

char 作为低范围数字类型?

转载 作者:太空狗 更新时间:2023-10-29 15:45:03 26 4
gpt4 key购买 nike

当使用 C 语言编程时,有时我的函数会接收到始终在 0 到 4 范围内的数值。32 位 int 最多可以容纳 2,147,483,647。那是很多我没有使用的分配内存。我知道范围最小的类型是 char(从 0255,对吧?)。用它来保存低范围数值是一种好习惯吗?我可以使用任何其他类型吗?

最佳答案

如果它是一个标量函数参数,它在传递给函数时肯定会在实践中至少提升为 32 位类型,因此使用 char 没有实际区别。我认为为了可读性更好,int 是明显的“通用整数值”类型。

但是,如果您可能有一个很大的值数组,使用 char 将使这些值在内存中更紧密地打包。如果您真的 对内存有压力,您可以通过每个值仅使用 3 或 4 位(最少 3 位,4 位对齐更好)来将它们打包得更紧。然而,这肯定会降低处理效率。

关于char 作为低范围数字类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23050050/

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