keil中error: #70: incomplete type is not allowed——已解决!

发布者:心有归属最新更新时间:2022-05-23 来源: eefocus关键字:keil  error 手机看文章 扫描二维码
随时随地手机看文章

今天改写程序,,在b.c文件中需要引入一个a.c中的结构体变量,,我在b.c中直接extern 这个结构体,,结果编译时报错error: #70: incomplete type is not allowed最后上网查找才知道结构体不能这样引入。。


正确的引入方法是;


1.在a.h中声明这个结构体,,(结构体实体要在.h文件中)


2.在a.c中定义这个结构体类型的变量。(也可以在a.h中定义结构体变量)


3.在b.c中ertern引入这个结构体变量


当ertern一个数组时如果不定义数组大小是也会出现error: #70: incomplete type is not allowed这个错误。。


正确引入数组:


ertern char a[10];


关键字:keil  error 引用地址:keil中error: #70: incomplete type is not allowed——已解决!

上一篇:* JLink Info: Could not measure total IR len. TDO is constant high.
下一篇:KEIL调试错误信息提示

推荐阅读最新更新时间:2024-11-10 10:12

STM32开发环境(工具)之Keil MDK 介绍
STM32微处理器基于ARM核,所以很多基于ARM嵌入式开发环境都可用于STM32开发平台。开发工具都可用于STM32开发。选择合适的开发环境可以加快开发进度,节省开发成本。本章将先对STM32常用的开发工具Keil MDK和IAR EWARM进行简单介绍,然后结合STM32_SK仿真评估板和STM32F103C的开发板讲解STM32片上资源使用,最后给出一个基于STM32的数据采集器的应用实例。 5.1 Keil MDK介绍 Keil是德国知名软件公司Keil(现已并入ARM 公司)开发的微控制器软件开发平台,是目前ARM内核单片机开发的主流工具。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器在内
[单片机]
STM32开发环境(工具)之<font color='red'>Keil</font> MDK 介绍
如何禁止KEIL初始化RAM为零& 如何判断是软复位还是上电复位
笔记: (1)如何禁止KEIL初始化RAM为零? 1. 在KEIL Noinit 打钩 2. 1 另须对需要热启动保持的变量用__at关键字指定某个区域,否则还是没用 (#include absacc.h ) 2 或者__attribute__((zero_init)) 关键字 .bss段 int test1=1; __attribute__((zero_init)) int test2; int test3 __at(0x20001000); 查看MAP文件 test1 0x20000000 Data 4 main.o(.dat
[单片机]
如何禁止<font color='red'>KEIL</font>初始化RAM为零& 如何判断是软复位还是上电复位
7年穿越之战!二代i7-2600K对决八代i7-8700K:结果惊人
  一个月前,我们曾经对比过四代酷睿旗舰Corei7-4770K、八代酷睿旗舰Corei7-8700K玩游戏的差异,结果有点意外,i7-4770K大有再战三年的意味,并没有想象中那么落伍。   那么,眼光再放长远一些呢?GameSpot又找来了二代酷睿旗舰Corei7-2600K,当年的一代神U,把它和Corei7-8700K作了一番对比。     i7-2600K发布于2011年初,代号SandyBridge,制造工艺32nm,4核心8线程,主频3.4-3.8GHz,三级缓存8MB,核心显卡HD3000,执行单元12个,频率850-1350MHz,内存支持双通道DDR3-1333,热设计功耗95W。   i7-8700K大家就比
[嵌入式]
博通宣布撤回高通1170亿美元收购要约
集微网消息,博通公司周三宣布,已撤回1170亿美元收购高通的提议。同时,高通也放弃了代理权争夺战。在高通下个月的年度股东大会上,博通将不再寻求自己提名的6位董事候选人进入高通董事会。 但是博通准备将总部从新加坡迁往美国的计划没有改变。博通这一系列决定意味着,该公司收购高通的计划以失败告终。 美国总统特朗普周一发布命令,以国家安全为由,禁止博通按原计划收购高通。 多次报价、加快将总部迁往美国,尽管博通在高通和美国政府两方面都下足了工夫,但收购计划还是没能成行。 当地时间周三早间,博通公司正式发布声明,表示将撤回收购高通公司的邀约。 博通在声明中还是表达了收购无果的失望情绪,但仍会遵从特朗普禁令。 博通还表示,总部迁册工作仍将继续进行
[手机便携]
占据70%以上成本——一文读懂人形机器人的核心零部件
2021年8月,特斯拉CEO马斯克于“人工智能日”首次公开展示人形机器人TeslaBot。2022年6月,马斯克再次于推特称,将于2022年9月30日公布人形机器人原型机。 考虑到特斯拉强大的产业化能力与市场影响力,其有望拉开人形机器人产业化序幕。 根据Marketsandmarkets的预测,全球人形机器人市场规模(仅考虑单机)将从2022年15亿美元提升至2027年的173亿美元(约合人民币1038亿元),千亿市场未来可期。 近日,机器人概念在A股持续活跃,板块内超十多只个股涨停,东吴证券从产业链视角阐述了人形机器人的投资机会,而核心零部件在其中的重要性十分突出。 核心零部件尤为重要 人形机器人产业链主要分为上中下游三部分
[机器人]
KEIL for ARM 自带的例子程序虚拟串口调试
1.先安装Keil for ARM,可参考我上篇博文 Keil uVision4注册机 下载及安装 2.然后如下图双击 3.然后用 VSPD 虚拟2个串口(com1 ,com2) 4。然后在 kiel 的命令行输入 MODE COM1 4800,0,8,1 ASSIGN COM1 5.然后在串口调试助手中输入进行如下设置,并运行程序,hello world 就出现了
[单片机]
<font color='red'>KEIL</font> for ARM 自带的例子程序虚拟串口调试
stm32 keil4建立工程
在安装完Keil vision4、配置好MDK仿真环境后,我们就开始建立工程啦! 一.新建工程 1.在桌面创建TEST文件夹,在文件夹中创立以下文件夹; 2.启动Keil v4,新建我们的工程文件,文件取名为STM-DEMO,保存在文件夹USER下; 3.选择芯片,选择STM公司的STM32101VE; 4.问是否复制STM32的启动代码到工程文件中,点否,我们有库自己手动添加; 5.工程建立成功,但我们的工程中没有任何文件; 6.把STM库里的文件复制到TEST的这五个文件夹里: (1)USER:放工程文件 (2)FWLIB:放STM32库里面的inc 和src两个文件夹,
[单片机]
stm32 <font color='red'>keil</font>4建立工程
如何查看GD32 Keil和IAR工程的map文件
我们在设计调试程序时,往往需要知道一个函数或一个变量它在MCU中具体所在的地址以及所占用的空间大小,这时候就需要查看map文件。 那么什么是map文件呢?map文件是编译器编译工程后生成的一个文件,文件会有很多信息,比如函数地址及所占空间大小、变量地址及所占用空间大小、栈顶指针、整个工程所占用的flash和RAM空间大小等等。在进行代码分析时,map文件是非常重要的。下面小编就来教大家如何查看GD32 Keil和IAR工程的map文件。 一、Keil工程: Keil工程中打开map文件非常简单,将工程正常编译后,双击工程名即可打开map文件: 二、IAR工程: IAR工程一般默认是不生成map文件的,我们需要进行一
[单片机]
如何查看GD32 <font color='red'>Keil</font>和IAR工程的map文件
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved