当我在本地初始化数组时,为什么会出现分段错误?

时间:2015-01-30 19:00:51

标签: c++ arrays segmentation-fault combinations

当我在main中初始化c时,我遇到了分段错误。但是当我在全球范围内初始化它时工作正常。

#include <bits/stdc++.h>
using namespace std;
#define MOD 1000000007
int c[2001][2001];

int main()
{ 
  // I get a segmentation fault when I initialise c inside main
  // But works fine when I initialise it globally.
  // int c[2001][2001];
  int T,n,m,i,j;
  for(i=0;i<2001;++i)
  {
    c[i][0]=1;
    for(j=1;j<=i;++j)
      c[i][j]=(c[i-1][j-1]+c[i-1][j])%MOD;
  }

  scanf("%d",&T);
  while(T--)
  {
    scanf("%d%d",&n,&m);
    printf("%d\n",c[n][m]);
  }
}

0 个答案:

没有答案