gpt4 book ai didi

C++:在运行时更改 for 循环的索引是一种不好的方法吗?

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

我有一个 for 循环,用于搜索结构数组以查找特定结构。现在这个数组的大小可能是 10000。

在 for 循环中,我可能会收集一些额外的信息,这些信息会告诉我您要查找的结构的确切位置。因此,如果您的索引当前为“5”,您可能会发现它不是“5”,而是“9000”。

所以我使用这些信息来更改索引。

现在代码在不更改索引的情况下工作得很好,因为它确实找到了所需的信息。但是,如果我 100% 确定我在这种情况下所做的是正确的,是否可以更改 for 循环中的索引以便更快地获得结果?

提前致谢

最佳答案

绝对没问题。该语言不区分在循环体中更改索引和在循环 header 内的增量语句中更改它。

for (initializer-statement; condition-statement; increment-statement)
loop-body;

大部分等同于

{
initializer-statement;
while (condition-statement) {
loop-body;
increment-statement;
}
}

一个区别是 for 循环体中的 continue 语句仍然会执行 increment-statement,这可能会导致出乎意料的问题。

另请注意,不要因超出终止条件而造成无限循环。

关于C++:在运行时更改 for 循环的索引是一种不好的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11843497/

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