我是编程的初学者,而且我遇到了一个我无法解释的错误。我已经彻底搜索了一个解决方案,我看到很多人都遇到了这个问题,但我还没能解决它。
我的程序只是创建一个双类型矩阵,我用两个嵌套循环填充。编译之后,我得到.exe文件,但是当我运行它时,终端说分段错误:11注销。
// Storage for the animals.
private List<Field> field;
private List<List<Animal>> animalsList;
public void place(Animal animal)
{
Location location = animal.getLocation();
animalsList = new ArrayList<List<Animal>>();
field = new ArrayList<Animal>;
field.add(Field(location.getRow(), location.getCol()));
animalsList.add(field, animal);
}
有谁知道问题是什么?设置较低的N没有帮助。我认为这是一个非常基本的程序,很抱歉打扰你们,谢谢!
答案 0 :(得分:1)
您尝试分配的数组太大而无法在堆栈上完成,并且您正在获得堆栈溢出。 要解决此问题,您可以使用:
double (*T)[NN] = new double[N][NN];
声明你的数组。