MDK Keil编译报错error: #28: expression must have a constant value的解决办法

使用低版本Keil编译高版本编辑过的工程,编译时报错error: #28: expression must have a constant value和 error: #268: declaration may not appear after executable statement in block。

报错操作:在函数中的数组中直接定义形参

报错操作:在函数中间位置直接定义变量

低版本keil为5.18,高版本应该为5.29以上。

解决办法:点击魔术棒Option for Target,找到C/C++选项,勾选里面的C99 Mode。

5.14版本和5.18版本默认设置C99 Mode是勾选的,如果编译报错可以查看一下这里有没有勾选。使用C99 Mode后移植到其他芯片平台要注意对应修改,不然也容易报错。

相关推荐
小刘爱玩单片机2 小时前
【stm32简单外设篇】- MQ-2烟雾传感器模块
c语言·stm32·单片机·嵌入式硬件
2501_9181269111 小时前
stm32做一个次声波检测器,需要哪些元件
stm32·单片机·嵌入式硬件·学习·个人开发
加斯顿工程师13 小时前
STM32F103C8T6驱动SRF05超声波测距传感器程序
stm32·单片机·嵌入式硬件
姜太公钓鲸23315 小时前
STM32F1有72MHz的Cortex-M3内核。72MHZ是什么意思?指的是什么?
stm32·单片机·嵌入式硬件
2501_918126911 天前
stm32上,接线柱下有3v3,tms,gnd,tck,rst,这几个字,分别怎么对应接红,绿,黑,白,线
stm32·单片机·嵌入式硬件·学习·个人开发
小刘爱玩单片机1 天前
【stm32协议外设篇】- HX1838 红外接收头
c语言·stm32·单片机·嵌入式硬件
小刘爱玩单片机1 天前
【stm32协议外设篇】- DS18B20 单总线数字温度检测模块
c语言·stm32·单片机·嵌入式硬件
羽获飞1 天前
从零开始学嵌入式之STM32——12.使用STM32普通引脚通过软件模拟实现I2C通讯协议
stm32·单片机·嵌入式硬件
LCG元1 天前
嵌入式GUI设计:STM32F429+LVGL,智能仪表盘界面开发指南
驱动开发·stm32·嵌入式硬件