[ILINK32 Error] Error: Unresolved external '__InitVCL' referenced from D:\TOOL\RAD STUDIO\LIB\CP32MTI.LIB|crtlvcl
[ILINK32 Error] Error: Unresolved external '__ExitVCL' referenced from D:\TOOL\RAD STUDIO\LIB\CP32MTI.LIB|crtlvcl
怎么回事的,郁闷啊~
8 个解决方案
#1
连接错误。。。
lib目录设置过没有?
lib目录设置过没有?
#2
没设置过
但显示错误这里的lib路径是对的呀:from D:\TOOL\RAD STUDIO\LIB\CP32MTI.LIB
但显示错误这里的lib路径是对的呀:from D:\TOOL\RAD STUDIO\LIB\CP32MTI.LIB
#3
把完整的代码贴出来看看啊
:-)
:-)
#4
把完整的代码贴出来看看啊
:-)
:-)
#5
代码呢?
#6
创建工程(Project)的时候,选项当中那个Use VCL前的勾去掉即可.试着再重新创建一个Project吧.
#7
哇,按照6楼的做就可以了,非常感谢这位达人~
以下是代码:
#include<stdio.h>
#include<stdlib.h>
struct ElemType
{
int numb;
char name[20];
long tel;
}elem[100];
int length;
void SetData()
{
printf("\n 请输入总人数:");
scanf("%d",&length);
int i=0;
for(;i<length;i++)
{
printf("\n 请输入学号:");
scanf("%d",&elem[i].numb);
printf("\n 请输入姓名:");
scanf("%s",&elem[i].name);
printf("\n 请输电话号码:");
scanf("%ld",&elem[i].tel);
}
}
void Insert(int i,ElemType e)
{
//程序填空①
if(i<1||i>length+1)
{
printf("error!");
exit(1);
}
if(length+1>100)
{
printf("overflow!");
exit(1);
}
i--;
for(int j=length;j>=i;j--)
elem[j+1]=elem[j];
elem[i]=e;
length++;
}
ElemType Delete(int i)
{
ElemType x;
int j;
i--;
if(i<0||i>length-1)
{
printf("i Error!");
x.numb=-1;
}
else
{
//程序填空②
x=elem[i];
for(j=i;j<length;j++)
elem[j]=elem[j+1];
length--;
}
return x;
}
void PrintOut()
{
printf("\n 通讯录总人数:%d",length);
printf("\n PrintOut Data:\n");
printf(" 学号 姓名 电话号码\n");
for(int k=0;k<length;k++)
{
printf(" %d %s %ld\n",elem[k].numb,elem[k].name,elem[k].tel);
}
}
int main()
{
int i,k,delnum;
struct ElemType e,x;
printf("\n 通讯录演示");
do
{
printf("\n 1. 初步建立一个通讯录(线性表)");
printf("\n 2. 插入一个数据元素");
printf("\n 3. 删除一个元素,返回其值");
printf("\n********************************");
printf("\n 请输入你的选择(1,2,3,4)");
scanf("%d",&k);
switch(k)
{
case 1: SetData();PrintOut(); break;
case 2:
printf("\n 插入位置,i=");
scanf("%d",&i);
printf("\n 插入的数据学号=");
scanf("%d",&e.numb);
printf("\n 插入的数据姓名=");
scanf("%s",&e.name);
printf("\n 插入的数据电话号码=");
scanf("%d",&e.tel);
Insert(i,e);
PrintOut();
break;
case 3:
printf("\n 删除第几个元素,i=");
scanf("%d",&delnum);
x=Delete(delnum);
printf("\n 被删除的元素数值");
printf("\n 学号:%d,姓名:%s,电话号码:%ld",x.numb,x.name,x.tel);
//printf(",姓名:%d",x);
PrintOut();
break;
default:break;
}
}while(k>=1&&k<4);
printf("\n 再见!\n 按任意键返回。。。;");
getchar();
return 0;
}
以下是代码:
#include<stdio.h>
#include<stdlib.h>
struct ElemType
{
int numb;
char name[20];
long tel;
}elem[100];
int length;
void SetData()
{
printf("\n 请输入总人数:");
scanf("%d",&length);
int i=0;
for(;i<length;i++)
{
printf("\n 请输入学号:");
scanf("%d",&elem[i].numb);
printf("\n 请输入姓名:");
scanf("%s",&elem[i].name);
printf("\n 请输电话号码:");
scanf("%ld",&elem[i].tel);
}
}
void Insert(int i,ElemType e)
{
//程序填空①
if(i<1||i>length+1)
{
printf("error!");
exit(1);
}
if(length+1>100)
{
printf("overflow!");
exit(1);
}
i--;
for(int j=length;j>=i;j--)
elem[j+1]=elem[j];
elem[i]=e;
length++;
}
ElemType Delete(int i)
{
ElemType x;
int j;
i--;
if(i<0||i>length-1)
{
printf("i Error!");
x.numb=-1;
}
else
{
//程序填空②
x=elem[i];
for(j=i;j<length;j++)
elem[j]=elem[j+1];
length--;
}
return x;
}
void PrintOut()
{
printf("\n 通讯录总人数:%d",length);
printf("\n PrintOut Data:\n");
printf(" 学号 姓名 电话号码\n");
for(int k=0;k<length;k++)
{
printf(" %d %s %ld\n",elem[k].numb,elem[k].name,elem[k].tel);
}
}
int main()
{
int i,k,delnum;
struct ElemType e,x;
printf("\n 通讯录演示");
do
{
printf("\n 1. 初步建立一个通讯录(线性表)");
printf("\n 2. 插入一个数据元素");
printf("\n 3. 删除一个元素,返回其值");
printf("\n********************************");
printf("\n 请输入你的选择(1,2,3,4)");
scanf("%d",&k);
switch(k)
{
case 1: SetData();PrintOut(); break;
case 2:
printf("\n 插入位置,i=");
scanf("%d",&i);
printf("\n 插入的数据学号=");
scanf("%d",&e.numb);
printf("\n 插入的数据姓名=");
scanf("%s",&e.name);
printf("\n 插入的数据电话号码=");
scanf("%d",&e.tel);
Insert(i,e);
PrintOut();
break;
case 3:
printf("\n 删除第几个元素,i=");
scanf("%d",&delnum);
x=Delete(delnum);
printf("\n 被删除的元素数值");
printf("\n 学号:%d,姓名:%s,电话号码:%ld",x.numb,x.name,x.tel);
//printf(",姓名:%d",x);
PrintOut();
break;
default:break;
}
}while(k>=1&&k<4);
printf("\n 再见!\n 按任意键返回。。。;");
getchar();
return 0;
}
#8
hehe
#1
连接错误。。。
lib目录设置过没有?
lib目录设置过没有?
#2
没设置过
但显示错误这里的lib路径是对的呀:from D:\TOOL\RAD STUDIO\LIB\CP32MTI.LIB
但显示错误这里的lib路径是对的呀:from D:\TOOL\RAD STUDIO\LIB\CP32MTI.LIB
#3
把完整的代码贴出来看看啊
:-)
:-)
#4
把完整的代码贴出来看看啊
:-)
:-)
#5
代码呢?
#6
创建工程(Project)的时候,选项当中那个Use VCL前的勾去掉即可.试着再重新创建一个Project吧.
#7
哇,按照6楼的做就可以了,非常感谢这位达人~
以下是代码:
#include<stdio.h>
#include<stdlib.h>
struct ElemType
{
int numb;
char name[20];
long tel;
}elem[100];
int length;
void SetData()
{
printf("\n 请输入总人数:");
scanf("%d",&length);
int i=0;
for(;i<length;i++)
{
printf("\n 请输入学号:");
scanf("%d",&elem[i].numb);
printf("\n 请输入姓名:");
scanf("%s",&elem[i].name);
printf("\n 请输电话号码:");
scanf("%ld",&elem[i].tel);
}
}
void Insert(int i,ElemType e)
{
//程序填空①
if(i<1||i>length+1)
{
printf("error!");
exit(1);
}
if(length+1>100)
{
printf("overflow!");
exit(1);
}
i--;
for(int j=length;j>=i;j--)
elem[j+1]=elem[j];
elem[i]=e;
length++;
}
ElemType Delete(int i)
{
ElemType x;
int j;
i--;
if(i<0||i>length-1)
{
printf("i Error!");
x.numb=-1;
}
else
{
//程序填空②
x=elem[i];
for(j=i;j<length;j++)
elem[j]=elem[j+1];
length--;
}
return x;
}
void PrintOut()
{
printf("\n 通讯录总人数:%d",length);
printf("\n PrintOut Data:\n");
printf(" 学号 姓名 电话号码\n");
for(int k=0;k<length;k++)
{
printf(" %d %s %ld\n",elem[k].numb,elem[k].name,elem[k].tel);
}
}
int main()
{
int i,k,delnum;
struct ElemType e,x;
printf("\n 通讯录演示");
do
{
printf("\n 1. 初步建立一个通讯录(线性表)");
printf("\n 2. 插入一个数据元素");
printf("\n 3. 删除一个元素,返回其值");
printf("\n********************************");
printf("\n 请输入你的选择(1,2,3,4)");
scanf("%d",&k);
switch(k)
{
case 1: SetData();PrintOut(); break;
case 2:
printf("\n 插入位置,i=");
scanf("%d",&i);
printf("\n 插入的数据学号=");
scanf("%d",&e.numb);
printf("\n 插入的数据姓名=");
scanf("%s",&e.name);
printf("\n 插入的数据电话号码=");
scanf("%d",&e.tel);
Insert(i,e);
PrintOut();
break;
case 3:
printf("\n 删除第几个元素,i=");
scanf("%d",&delnum);
x=Delete(delnum);
printf("\n 被删除的元素数值");
printf("\n 学号:%d,姓名:%s,电话号码:%ld",x.numb,x.name,x.tel);
//printf(",姓名:%d",x);
PrintOut();
break;
default:break;
}
}while(k>=1&&k<4);
printf("\n 再见!\n 按任意键返回。。。;");
getchar();
return 0;
}
以下是代码:
#include<stdio.h>
#include<stdlib.h>
struct ElemType
{
int numb;
char name[20];
long tel;
}elem[100];
int length;
void SetData()
{
printf("\n 请输入总人数:");
scanf("%d",&length);
int i=0;
for(;i<length;i++)
{
printf("\n 请输入学号:");
scanf("%d",&elem[i].numb);
printf("\n 请输入姓名:");
scanf("%s",&elem[i].name);
printf("\n 请输电话号码:");
scanf("%ld",&elem[i].tel);
}
}
void Insert(int i,ElemType e)
{
//程序填空①
if(i<1||i>length+1)
{
printf("error!");
exit(1);
}
if(length+1>100)
{
printf("overflow!");
exit(1);
}
i--;
for(int j=length;j>=i;j--)
elem[j+1]=elem[j];
elem[i]=e;
length++;
}
ElemType Delete(int i)
{
ElemType x;
int j;
i--;
if(i<0||i>length-1)
{
printf("i Error!");
x.numb=-1;
}
else
{
//程序填空②
x=elem[i];
for(j=i;j<length;j++)
elem[j]=elem[j+1];
length--;
}
return x;
}
void PrintOut()
{
printf("\n 通讯录总人数:%d",length);
printf("\n PrintOut Data:\n");
printf(" 学号 姓名 电话号码\n");
for(int k=0;k<length;k++)
{
printf(" %d %s %ld\n",elem[k].numb,elem[k].name,elem[k].tel);
}
}
int main()
{
int i,k,delnum;
struct ElemType e,x;
printf("\n 通讯录演示");
do
{
printf("\n 1. 初步建立一个通讯录(线性表)");
printf("\n 2. 插入一个数据元素");
printf("\n 3. 删除一个元素,返回其值");
printf("\n********************************");
printf("\n 请输入你的选择(1,2,3,4)");
scanf("%d",&k);
switch(k)
{
case 1: SetData();PrintOut(); break;
case 2:
printf("\n 插入位置,i=");
scanf("%d",&i);
printf("\n 插入的数据学号=");
scanf("%d",&e.numb);
printf("\n 插入的数据姓名=");
scanf("%s",&e.name);
printf("\n 插入的数据电话号码=");
scanf("%d",&e.tel);
Insert(i,e);
PrintOut();
break;
case 3:
printf("\n 删除第几个元素,i=");
scanf("%d",&delnum);
x=Delete(delnum);
printf("\n 被删除的元素数值");
printf("\n 学号:%d,姓名:%s,电话号码:%ld",x.numb,x.name,x.tel);
//printf(",姓名:%d",x);
PrintOut();
break;
default:break;
}
}while(k>=1&&k<4);
printf("\n 再见!\n 按任意键返回。。。;");
getchar();
return 0;
}
#8
hehe