首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

读取位置时发生冲突,没有异常啊

2012-03-08 
读取位置时发生冲突,没有错误啊?以下是以邻接表为存储结构创建一个图的时候的部分程序(在VC2005下调试)typ

读取位置时发生冲突,没有错误啊?
以下是以邻接表为存储结构创建一个图的时候的部分程序(在VC2005下调试)typedef   struct   ArcNode{
int   num;     //结点编号
ARC_INFO_TYPE*   info;//弧的其他相关信息,如权值等等
struct   ArcNode*   nextArcNode;//指向下一个表结点的指针
}ArcNode;
//顶点(头节点)
typedef   struct   VNode{
VERTEX_TYPE   data;//顶点的数据
ArcNode*   firstArcNode;//指向第一个弧结点的指针
}VNode,   AdjList[MAX_VERTEX_NUM];//邻接表
======================
以下创建图:
int   CreateALGraph(void){
int   i;
int   v1,v2;//暂时存放两个相关联点的编号
ArcNode*   p;
printf( "输入结点个数,边数,图类型:\n ");
scanf( "%d,%d,%d ",&Graph.vertexNum,&Graph.arcNum,&Graph.kind);
printf( "输入顶点的数据:\n ");
for(i   =   0;   i   <   Graph.vertexNum;   ++i){     //初始化各个顶点(头节点)
scanf( "%c ",&adjList[i].data);
adjList[i].firstArcNode   =   NULL;
}
printf( "输入相关联的边:\n ");  
for(i   =   0   ;   i   <   Graph.arcNum;   ++i){   //输入所有边(关联的点)编号
scanf( "%d,%d ",&v1,&v2);
p   =   (ArcNode*)malloc(sizeof(ArcNode));
p-> num   =   v2;
p-> nextArcNode   =   adjList[v1].firstArcNode;//这里有问题:提示:DepthFirstSearch.exe   中的   0x0041151d   处未处理的异常:   0xC0000005:   读取位置   0x66a7d804   时发生访问冲突。还有提示:p-> nextArcNode   =   0xcdcdcdcd   {num=???   info=???   nextArcNode=???   }
adjList[v1].firstArcNode   =   p;
if(!Graph.kind){     //若为无向图
p   =   (ArcNode*)malloc(sizeof(ArcNode));
p-> num   =   v1;
p-> nextArcNode   =   adjList[v2].firstArcNode;
adjList[v2].firstArcNode   =   p;
}
}
return   1;
}
//寻求大家的帮助,谢谢

[解决办法]
ding 期待高手解决

热点排行