1

我正在通过循环编译触发器,其中包含以下简单操作:

for (i = beginvar; i < endvar; i++) {
    for (j = beginvar; j < endvar; j++) {   
        num1 = ((num1 + num2) / num1);
    }
}

但是,我从来没有对 num1 做任何事情,因此编译器会跳过它,无论 beginvar 和 endvar 有多大,这个循环都需要 0 毫秒。

我的问题是,如何强制编译器执行嵌套循环?

我尝试将 num1 声明为 volatile,但这比我想要的优化少。我希望编译器进行优化,但我也希望它执行这个循环。

我也不想在终端上打印任何东西

4

1 回答 1

1

将循环后的值num1用于某事,以便编译器无法轻易消除它。

于 2012-11-30T18:51:22.777 回答