Debug/AFG.exe :fatal error LNK1169:one or more multiply defi

xurose2022-10-04 11:39:541条回答

Debug/AFG.exe :fatal error LNK1169:one or more multiply defined symbols found
#include
void main()
{
int a,b;
int *pointer_1,*pointer_2;
a=100;b=10;
pointer_1=&a;
pointer_2=&b;
printf("%d,%dn",a,b);
printf("%d,%dn",*pointer_1,*pointer_2);
}
c的程序在vc++中就出现这种情况.如何在VC中正确的执行

已提交,审核后显示!提交回复

共1条回复
心伤_原野 共回答了21个问题 | 采纳率95.2%
语法没有问题,可能是VC++的原因,你新建一个项目,把代码复制过去试试
1年前

相关推荐

已经在其他文件中定义,fatal error LNK1169:找到一个或多个多重定义的符号
已经在其他文件中定义,fatal error LNK1169:找到一个或多个多重定义的符号
定义了一个头文件,包含一个 bool 变量,然后在另一个 类的头文件中包含了此头文件 ,如下所示:
A.h
#ifndef _A_HEADER_
#define _A_HEADER_
bool bGolbal = true;
#endif //x09x09_A_HEADER_
C.cpp
#include "a.h"
#include "b.h"
int main()
{
bGolbal = false;
return 0;
}
得到如上错误,请问如何解决,
A.h
#ifndef _A_HEADER_
#define _A_HEADER_
extern bool bGolbal;
#endif //x09x09_A_HEADER_
B.cpp
extern bool bool bGolbal;
void set()
{
bGolbal = true;
}
c.cpp
bool bGolbal;
void main()
{
bGolbal = FALSE;
class B b;
b.set(bGolbal);
if(b)
{
printf("1111n");
}
else
{
printf("00000000000n");
}
}
我象风一样1年前1
jasmine_0213 共回答了17个问题 | 采纳率88.2%
头文件不得包含变量定义和函数体,否则被包含一次,这些变量、函数就被重新定义,从而导致这个问题.把变量定义放到一个源文件中,然后在头文件中写成
extern bool bGolbal ;