今天本来想练习循环展开,打出了一下代码,但是竟然编译成功了,还输出了1。各位大佬们能告诉我为什么吗?
#include<iostream>
using namespace std;
int a[200000009],n;
long long sum(){
long long sum1=0,sum2=0,sum3=0,sum4=0,sum5=0,sum6=0,sum7=0,sum8=0;
for(int i=1;i<=n;i+=8){
sum1+=a[i];
sum2+=a[i+1];
sum3+=a[i+2];
sum4+=a[i+3];
sum5+=a[i+4];
sum6+=a[i+5];
sum7+=a[i+6];
sum8+=a[i+7];
}
return sum1+sum2+sum3+sum4+sum5+sum6+sum7+sum8;
}
int main(){
n=2e8;
for(int i=1;i<=n;++i){
a[i]=1;
}
cout<<sum;
}
上面的代码输出部分sum没加括号。