我何时以及为什么要使用i8而不是i32? [关闭]

问题描述 投票:1回答:1

我认为将变量分配给整数值时,rust的默认大小为32位(带符号)。

[如果我正在处理的值适合16位(例如15000)或什至8位(例如120),为什么我还不想只使用默认值?

我可能会节省一些内存-但这值得考虑吗?有速度优势吗?还有什么,如果有的话?

rust integer
1个回答
0
投票
[在诸如嵌入式系统,数据传输协议或其他任何主要涉及网络存储和数据传输的情况下,使用i8i16以及其他类似方法确实是一个好主意。同样至少在--release模式下,编译器将优化结构的布局,以便尽可能有效地打包所有内容。

但是对于一般情况,因此无论您说什么,您的值始终适合16或8位...我不确定是否有明确的答案。我要说的是,速度至少最终将取决于体系结构。

用户trentcl刚刚在Discourse论坛上链接到this post,我认为这说明了有关一般情况的许多观点。

© www.soinside.com 2019 - 2024. All rights reserved.