这个程序在visual C++6.0 编译的时候没错,执行的时候就出错了,为什么? 错误提示如下:
#include<stdio.h>main(){voidgx(),gy();externintx,y;printf("1:x=%d\ty=%d\n",x,y);y=246...
#include<stdio.h>
main()
{
void gx(),gy();
extern int x,y;
printf("1:x=%d\ty=%d\n",x,y);
y=246;
gx();
gy();
}
void yx()
{
extern int x,y;
x=135;
printf("2:x=%d\ty=%d\n",x,y);
}
int x,y;
void gy()
{
printf("3:x=%d\ty=%d\n",x,y);
}
错误提示如下::::
--------------------Configuration: 2 - Win32 Debug--------------------
Linking...
1.obj : error LNK2005: _main already defined in 2.obj
1.obj : error LNK2005: _yx already defined in 2.obj
1.obj : error LNK2005: _gy already defined in 2.obj
2.obj : error LNK2001: unresolved external symbol _gx
1.obj : error LNK2001: unresolved external symbol _gx
Debug/2.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.
2.exe - 1 error(s), 0 warning(s) 展开
main()
{
void gx(),gy();
extern int x,y;
printf("1:x=%d\ty=%d\n",x,y);
y=246;
gx();
gy();
}
void yx()
{
extern int x,y;
x=135;
printf("2:x=%d\ty=%d\n",x,y);
}
int x,y;
void gy()
{
printf("3:x=%d\ty=%d\n",x,y);
}
错误提示如下::::
--------------------Configuration: 2 - Win32 Debug--------------------
Linking...
1.obj : error LNK2005: _main already defined in 2.obj
1.obj : error LNK2005: _yx already defined in 2.obj
1.obj : error LNK2005: _gy already defined in 2.obj
2.obj : error LNK2001: unresolved external symbol _gx
1.obj : error LNK2001: unresolved external symbol _gx
Debug/2.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.
2.exe - 1 error(s), 0 warning(s) 展开
3个回答
展开全部
1.obj : error LNK2005: _main already defined in 2.obj
主函数main已经在 2.obj中定义,检查文件2.c里是否含有main函数。
根据错误提示可以断定你的一个工程里两个文件中重复定义了main()函数,修改(去掉main函数)或者直接删除工程里的含有main函数的不需要运行的原程序文件,即可编译并正确执行。
主函数main已经在 2.obj中定义,检查文件2.c里是否含有main函数。
根据错误提示可以断定你的一个工程里两个文件中重复定义了main()函数,修改(去掉main函数)或者直接删除工程里的含有main函数的不需要运行的原程序文件,即可编译并正确执行。
追问
我是照着书写的,不知哪里错了!!
追答
你删除了2.c 吗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<cstdio>
using namespace std;
int main()
{
void gx(),gy();
extern int x,y;
printf("1:x=%d\ty=%d\n",x,y);
y=246;
gx();
gy();
return 0;
}
void yx()
{
extern int x,y;
x=135;
printf("2:x=%d\ty=%d\n",x,y);
}
int x,y;
void gy()
{
printf("3:x=%d\ty=%d\n",x,y);
}
using namespace std;
int main()
{
void gx(),gy();
extern int x,y;
printf("1:x=%d\ty=%d\n",x,y);
y=246;
gx();
gy();
return 0;
}
void yx()
{
extern int x,y;
x=135;
printf("2:x=%d\ty=%d\n",x,y);
}
int x,y;
void gy()
{
printf("3:x=%d\ty=%d\n",x,y);
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询