清除数组时如何使用模数
How to use the modulus when clearing an array?
我有一个清除多维数组的方法。我不是两个 for 循环,而是使用 One for O(n)。在这样做时,我必须检查它是否每次在每行中都达到数组的宽度。
我正在尝试使用模数来查看我是否等于宽度,或宽度加倍等,以便它进入下一行。当 i = 0 且 m_width = 5 时,调试器进入第二个代码块,但这不正确,所以我的算法一定是错误的。我不经常使用模量,所以我确定这就是麻烦。我该如何解决这个问题?提前谢谢你。
// Clear the cells with the requested value.
for (int i = 0; i < size; i++)
{
// If the width has been reached, go to the next row.
if ((i % m_width) == 0)
{
row++;
col = 0;
}
你的问题是 0 模任何数等于 0。如果您在模量检查之前检查 i 是否> 0,它应该可以正常工作。
相关文章:
- 仅使用绝对值对数组进行排序,并在C++中显示实际值
- 使用对象数组对 SFML 进行动画处理
- 使用字符数组作为 Map 中的键
- 使用基于数组和范围的 For 循环替换一些基本代码行
- 在C++中使用字符数组进行输入验证
- 如何使用列表/数组在C++中实现 Python "... not in ..."?
- 在C++中使用字符数组进行用户输入验证
- 使用动态数组时C++逻辑错误
- 使用 char 数组公钥的 OpenSSL 进行 RSA 加密
- 从用户输入中删除数组
- 如何打印我在地图中使用的数组?
- 使用基于数组的列表 c++ 合并 2 个数组
- C++使用QuickSort对数组结构进行排序
- 使用结构和数组时的"expected primary expression before '.' token"
- 使用动态数组求和和和求平均值
- 将字符串文本分配给字符*:const_cast<字符 *> 与使用 char 数组
- 如何清除数组中的元素
- 清除数组时如何使用模数
- 在C++中清除数组会在外部函数中而不是在main()中产生编译器错误
- 最有效的方法来清除数组的向量