C语言类型重定义错误

我用VC++2010编一个C语言工程。工程的每个文件中都需要用到一个结构类型。于是我在自定义的头文件中定义了一个结构变量structplayer{……};。并且在主文件中... 我用VC++2010编一个C语言工程。工程的每个文件中都需要用到一个结构类型。于是我在自定义的头文件中定义了一个结构变量struct player{……};。并且在主文件中定义了该结构类型的三个全局变量struct player player1, player2, player3,在其他文件中引用这三个全局变量extern struct player player1, player2, player3. 结果运行之后报错:documents.h(5): error C2011: “player”:“struct”类型重定义
documents.h(5) : 参见“player”的声明。
请问这种情况是怎么回事?怎么处理?
展开
 我来答
小猪的知识库
2012-05-12 · TA获得超过164个赞
知道小有建树答主
回答量:231
采纳率:100%
帮助的人:155万
展开全部
可以这么解决,把你的头文件这么改:

#ifndef XXX
##define XXx

在这里粘贴你原来头文件的内容

#endif
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lishunfen86121
2012-05-14 · TA获得超过143个赞
知道答主
回答量:141
采纳率:0%
帮助的人:135万
展开全部
在头文件处添加:

#ifndef XXX
##define XXx

添加你想包含的头文件

#endif
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
柳绵吹芳草
2012-05-12 · TA获得超过209个赞
知道答主
回答量:104
采纳率:0%
帮助的人:90.1万
展开全部
documents.h可能被包含了多次吧 ?
更多追问追答
追问
每个文件中包含一次。一共有三个C文件main.c; game.c; player.c,然后就是一个头文件documents.h。这样有问题吗?
追答
可否发给我看一下呢
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式