C语言是在.h中定义结构体还是在.c中定义?
有几个结构体,一个.h文件,三个.c文件,三个.c文件都要用到同一个结构体,最好的定义方法是什么啊?在.h中定义,三个.c中都用extern在其中一个.c中定义,.h中用...
有几个结构体,一个.h文件,三个.c文件,三个.c文件都要用到同一个结构体,最好的定义方法是什么啊?
在.h中定义,三个.c中都用extern
在其中一个.c中定义,.h中用extern
请问最好的方法是什么啊? 展开
在.h中定义,三个.c中都用extern
在其中一个.c中定义,.h中用extern
请问最好的方法是什么啊? 展开
5个回答
展开全部
//point.h
#ifndef POINT_H
#define POINT_H
struct POINT{
int x;
int y;
};
#endif
//1.c
#include "point.h"
struct POINT p1,p2,p3;
//1.h(#ifndef之类的略)
#include "point.h"
extern struct POINT p1,p2,p3;
2.c
#include "point.h"
#include "1.h"
//后面就可以用p1,p2,p3了。以后每个.c都像这样用就可以了,变量在哪个.c里定义的,就在与之对应的.h里extern,以后要用到的每个头文件都include它。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最好在头文件中定义,源文件需要用这个结构体就直接引用这个头文件就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将这个三个结构体 都放到.h中,不用extern吧,只有.c文件中添加上这个.h文件就好了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询