打印矩阵时,c ++程序停止,没有错误警告

时间:2012-05-04 01:22:53

标签: c++

我似乎找不到任何解决办法。

我有一个包含矩阵的'route'类型。如果我这样做:

cout << route << endl;

它可以打印内存 但如果我试试

 cout << route[1][1] << endl;

程序刚刚结束,没有任何错误或任何事情。 调试说: “(暂停:信号:SIGSEGV:分段错误)”

这是代码:

//structure is a type I created
Structure ***route = list->searchRoute(startPoint, destination, time);
//should return a matrix
cout << "Avaible routes: \n" << endl;
    for(int i = 0; i < 5;i++)
        cout << route[1][1]->startPoint << endl;

1 个答案:

答案 0 :(得分:1)

分段错误通常意味着您正在访问您不应访问的内存。可能发生的是我们的“矩阵”可能太小而不能在第二行/第二列中有一个块,因此当您尝试访问该位置时会抛出错误(因为您不拥有它)。确保正确分配路线且尺寸合适。