如果我有
等代码int main() {
int i, j, k;
int sum = 1;
for (i = 0; i < SIZE; i++) {
for (j = 0; j < SIZE; j++) {
for (k = 0; k < SIZE; k++) {
sum = -sum;
}
}
}
printf("hello, world\n");
return 0;
}
优化代码似乎仍在循环中。为什么编译只是删除它,因为它不影响print或return语句?
答案 0 :(得分:1)
只要我指定-O2
,GCC就会删除它gcc -Wall -O2
我以前只是编译(没有优化)
gcc -Wall