OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4096|回复: 8

关于c语言几点疑惑,麻烦原子哥等大神帮忙解答一下

[复制链接]

1

主题

2

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2015-7-20
在线时间
0 小时
发表于 2015-7-20 12:23:07 | 显示全部楼层 |阅读模式
5金钱
我在一个.h文件中声明了一个结构体
struct sitesurvey{
UCHAR Channel;
CHAR Ssid[MAX_LEN_OF_SSID];
UCHAR Bssid[MAC_ADDR_LEN];

CHAR security[23];
CHAR Rssi;
CHAR w_mode[7];
CHAR wps[3];
INT i;
};
在一个.c文件中定义了一个结构体数组
struct sitesurvey website[100];并且给其赋值

现在我想在另一个.c文件中引用该数组website[100];,我做了如下声明
extern struct sitesurvey website[100];
但是 编译时总是报错:array type has incomplete element type

请问这该如何解决?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

26

主题

261

帖子

1

精华

高级会员

Rank: 4

积分
734
金钱
734
注册时间
2013-11-1
在线时间
28 小时
发表于 2015-7-20 13:04:02 | 显示全部楼层
extern struct sitesurvey website[100];吧这句话的struct去掉试一试
回复

使用道具 举报

1

主题

2

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2015-7-20
在线时间
0 小时
 楼主| 发表于 2015-7-20 13:17:58 | 显示全部楼层
回复【2楼】zhao305149619:
---------------------------------
试过了,不行。。。
回复

使用道具 举报

81

主题

1002

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1876
金钱
1876
注册时间
2014-9-10
在线时间
208 小时
发表于 2015-7-20 14:31:08 | 显示全部楼层
extern放到声明结构体的.h中,在用到的地方包含这个.h。
小小蜗牛
回复

使用道具 举报

1

主题

72

帖子

0

精华

初级会员

Rank: 2

积分
115
金钱
115
注册时间
2015-7-16
在线时间
3 小时
发表于 2015-7-20 16:06:04 | 显示全部楼层
另一个c文件里没有包含声明struct sitesurvey这个结构体的头文件
回复

使用道具 举报

2

主题

12

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2014-8-2
在线时间
0 小时
发表于 2015-7-21 22:31:14 | 显示全部楼层
我觉得应该是 extern struct sitesurvey website[];
划一根火柴,点燃思维
回复

使用道具 举报

30

主题

705

帖子

1

精华

新手上路

积分
21
金钱
21
注册时间
2013-3-14
在线时间
52 小时
发表于 2015-7-22 17:00:23 | 显示全部楼层
.c中是不是应该这样定义啊:typedef struct {……}xxx;
extern my_xxx xxx;
当然了extern my_xxx xxx;要出现在.h中的。用的时候调用这个.h
我觉得是这样的。楼主可以试试看。
原子哥是不是又要出黑科技了呀。^_^...
回复

使用道具 举报

1

主题

108

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2012-11-8
在线时间
44 小时
发表于 2015-7-22 22:40:47 | 显示全部楼层
我们是不是应该关注下错误的含义呢?
array type has incomplete element type
是否可以翻译成“数组类型具有不完整的元素类型”,因此我觉得可能是你在定义数组类型的时候,使用的UCHAR,CHAR,INT 等等字符系统不识别呢?
回复

使用道具 举报

1

主题

108

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2012-11-8
在线时间
44 小时
发表于 2015-7-22 22:41:03 | 显示全部楼层
回复【3楼】QQ895855913:
---------------------------------
我们是不是应该关注下错误的含义呢? 
array type has incomplete element type 
是否可以翻译成“数组类型具有不完整的元素类型”,因此我觉得可能是你在定义数组类型的时候,使用的UCHAR,CHAR,INT 等等字符系统不识别呢?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 16:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表