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

本人编程很弱,大学学了计算机,智商拙计,课设遇到这个有关问题不知道如何解决,求帮助

2014-01-09 
本人编程很弱,大学学了计算机,智商拙计,课设遇到这个问题不知道怎么解决,求帮助#include stdafx.h#inclu

本人编程很弱,大学学了计算机,智商拙计,课设遇到这个问题不知道怎么解决,求帮助
#include "stdafx.h"
#include "head.h"
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<time.h>
#define LEN (sizeof(road))
/*********************************************
Function:          插入(insert)
**********************************************/

road * insert(road * head,road * end)
{
road *t1,*t0;
t0 = head;
t1 = end;
if(head==NULL)
{
head=t1;
t1->next=NULL;
}
else
{
head=t1;
t1->next=t0;
}
printf("\n");
return head;
}
/**********************************************
Function:       删除(delete)
**********************************************/
road *dele(road *head,unsigned int LinkId)
{
road *t0,*t1;
int i=0;
if(head==NULL)
printf("\n地图为空!");
t0 = head;
if(t0->next!=NULL)
{
if(LinkId == t0->LinkId)
{
i++;
if(t0 == head)
{
head=head->next;
}
else
t1->next=t0->next;
}
t1=t0;
t0=t0->next;
}

if(i==0)
printf("LinkId为%d的信息未找到!\n",LinkId);
else
printf("LinkId为%d的信息已成功删除!\n",LinkId);
printf("\n");
return(head);
}

/*********************************************
Function: 对地图进行删除,添加操作
*********************************************/ 
void update(road *head)
{
int i;
int LinkId_1;
FILE *fp;
road *end;
save(head);
    end=(road *)malloc(LEN);
fp = fopen("C:\Documents and Settings\Administrator\桌面\update\\电子地图.txt","w");
if(NULL == fp)
{
printf("打开文件失败,请检查!!\n");
exit(0);
}
while(1)
{
printf("请输入选择方式:\n");
printf("1:插入\n2:删除\n3:退出\n");
scanf("%d",&i);
scanf("%d",&i);
while(i > 3 || i < 1)
{
printf("输入错误请重新输入:\n");
scanf("%d",&i);
}
switch(i)
{
case 1:
printf("请输入要插入的内容:\n");
insert(head,end);
head = insert(head,end); 
save(head);
break;
case 2:
printf("请输入要删除的LinkId:");
scanf("%d",&LinkId_1);
head = dele(head, LinkId_1);
save(head);
break;
//case 3:
//printf("请输入要修改的LinkId:");
//scanf("%d",&LinkId_1);
//head=alter(head,LinkId_1);
//save(head);
//break;
}
if(4 == i)
break;
}
}

void main()
{
road* head;
   update(head);
}






错误也放上来:
Error11error LNK2019: unresolved external symbol "void __cdecl save(struct ROAD *)" (?save@@YAXPAUROAD@@@Z) referenced in function "void __cdecl update(struct ROAD *)" (?update@@YAXPAUROAD@@@Z)update.objupdate

Error12fatal error LNK1120: 1 unresolved externalsC:\Documents and Settings\Administrator\桌面\update\update\Debug\update.exeupdate

[解决办法]
在Update的函数里无法解析你的外部符号save(),也就是提你程序里缺少save函数。
[解决办法]
save(head);实现了吗
[解决办法]

引用:
save函数有写在头文件里,不知道这个算不算,而且把save那一句注释掉,也还是有错误

这是一个常见的问题,头文件里面不能定义,只能生命。也就是说save()必须定义在CPP里面

热点排行