1
這是我的代碼鏈接。如果我簡單地通過對每一行使用迭代器來打印列表,但它在循環中給出了分段錯誤。有人可以解釋爲什麼這是給分段錯誤?
#include<bits/stdc++.h>
using namespace std;
list<int> *adj = new list<int>[5];
void addEdge(int v,int w)
{
adj[v].push_back(w);
}
int main()
{
addEdge(1,2);
addEdge(2,3);
addEdge(3,4);
addEdge(4,5);
addEdge(5,2);
for(int i =1;i<6;i++)
{
list<int>::iterator j;
for(j = adj[i].begin();j!=adj[i].end();++j)
{
cout<<*j<<endl;
}
}
return 0;
}