tu0.cpp
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(259) : warning C4508: 'main' : function should return a value; 'void' return type assumed
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(157) : warning C4715: 'find_shortest_way' : not all control paths return a value
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(190) : warning C4715: 'add_arc' : not all control paths return a value
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(205) : error C4716: 'add_vex' : must return a value
执行 cl.exe 时出错
----------------解决方案--------------------------------------------------------
主函数没返回值
估计是
int main()
{
}时没返回值
应该为
int main()
{
......
return 0
}
这几个错误都是函数没有返回值的问题...你再检查检查
----------------解决方案--------------------------------------------------------
把程序贴一下啊
----------------解决方案--------------------------------------------------------
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(259) : warning C4508: 'main' : function should return a value; 'void' return type assumed
回答:估计你main定义为void main(),但是后来标准的C定义后,这个应该定义为
int main()
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(157) : warning C4715: 'find_shortest_way' : not all control paths return a value
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(190) : warning C4715: 'add_arc' : not all control paths return a value
回答:返回值类型或者返回值出错
学习方法:你可以去baidu或者google搜索not all control paths return a value
这样就可以看别人遇到这个问题时候的解决方法和经验
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(205) : error C4716: 'add_vex' : must return a value
回答,没有返回值,更具你的定义,增加返回值
----------------解决方案--------------------------------------------------------
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(259) : warning C4508: 'main' : function should return a value; 'void' return type assumed
回答:估计你main定义为void main(),但是后来标准的C定义后,这个应该定义为
int main()
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(157) : warning C4715: 'find_shortest_way' : not all control paths return a value
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(190) : warning C4715: 'add_arc' : not all control paths return a value
回答:返回值类型或者返回值出错
学习方法:你可以去baidu或者google搜索not all control paths return a value
这样就可以看别人遇到这个问题时候的解决方法和经验
C:\Documents and Settings\Administrator.A9440DB3015349E\桌面\th\tu0.cpp(205) : error C4716: 'add_vex' : must return a value
回答,没有返回值,更具你的定义,增加返回值
int add_vex(ALGraph *G, char *name)
{
(G->vexlist[G->vexnum]).data = (char *)malloc((strlen(name) + 1) * sizeof(char));
if(!(G->vexlist[G->vexnum]).data)
{
printf("内存申请失败!\n");
system("PAUSE");
exit(ERROR);
}
strcpy((G->vexlist[G->vexnum]).data, name);
(G->vexlist[G->vexnum]).firstarc = NULL;
G->vexnum++;
}
这是 第3个错误
----------------解决方案--------------------------------------------------------
//@返回false函数调用失败,返回true函数调用成功
int add_vex(ALGraph *G, char *name)
{
(G->vexlist[G->vexnum]).data = (char *)malloc((strlen(name) + 1) * sizeof(char));
if(!(G->vexlist[G->vexnum]).data)
{
printf("内存申请失败!\n");
system("PAUSE");
exit(ERROR); //修改为return false;
}
strcpy((G->vexlist[G->vexnum]).data, name);
(G->vexlist[G->vexnum]).firstarc = NULL;
G->vexnum++;
//增加return true;
}
改2个地方就可以了
----------------解决方案--------------------------------------------------------
----------------解决方案--------------------------------------------------------