gpt4 book ai didi

由于 `uint32_t` for 循环,C++ 程序挂起

转载 作者:太空狗 更新时间:2023-10-29 19:57:10 25 4
gpt4 key购买 nike

我有以下程序(这是完整的程序,注释除外):

#include <iostream>
#include <vector>

void sieve(uint32_t n) {
for(uint32_t i = 0; i < n; i++) {
for(uint32_t j = i * i; j < n; j += i) {
}
}
}

int main(int argv, char * argc[]) {
sieve(10);
return 0;
}

它编译得很好。当我运行它时,它永远挂起。即使我把 std::cout << "Test"作为 main 中的第一行, 它从不打印。

我是否遗漏了一些明显的东西?

最佳答案

for(uint32_t j = i * i; j < n; j += i) {

第一次通过i是 0 所以 j实际上并没有改变(j += 0)==>无限循环

关于由于 `uint32_t` for 循环,C++ 程序挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39950302/

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