【发布时间】:2012-05-27 01:34:54
【问题描述】:
我正在编写游戏并希望使用数组来表示棋盘。我正在寻找效率,因为我要进行多次迭代。在这种情况下,int 数组或 char 数组对于棋盘表示来说似乎都很方便。在 int 数组和 char 数组中进行操作时,在效率方面有什么区别吗?
我怀疑由于 char 数组的每个元素的大小都是 1 字节,它可能会因为内存中的不同表示而变慢(考虑一台现代计算机,它至少有 32 位用于 int 表示)......我是对的?
提前致谢。
编辑:我将生成游戏树,这就是为什么效率如此重要,时间消耗的微小差异会产生巨大差异。
【问题讨论】:
-
我想不出任何理由
char会变慢。如果有的话,可能取决于您正在执行的操作,它可能会更快。在 8 位架构的嵌入式目标上,int操作会更慢。 -
也许可以,但是
char数组占用的内存更少,如果它有足够的元素,它可能会比int数组更快。
标签: c arrays string malloc data-representation