当前位置:首页 > 技术心得 > 正文内容

keil warning C316:unterminated conditionals

xjtudll13年前 (2012-05-16)技术心得32290

用Keil 4写程序时遇到这个问题:Warning C316:unterminated conditionals

Google了一番,基本上找到了原因:

类似XX.C(99):warning C316:unterminated conditionals这种警告的话,表明XX.c文件有一个凌乱的条件编译或预编译。例如,用了条件编译#ifndef而忘记写#endif。

写条件编译时,可能会忘写一个基本的语句。例如,用了条件编译#ifndef而忘记写#endif。它们本该同时出现,不能丢掉其中任何一个。一个include文件最后的#endif 少了# 前缀或者没有#endif,都会出现类似警告。

总之,出现上述问题。先看看整个C文件中是否出现上述错误,或整个工程中自己写的那些头文件中里面的条件编译是否都写对了,即:前面写了#ifndef或#ifdef,后面是否有对应的#endif。

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://www.xjtudll.cn/Exp/234/

标签: keilC51
分享给朋友:

“keil warning C316:unterminated conditionals” 的相关文章

Multisim运放输出超过电源电压解决

Multisim运放输出超过电源电压解决

在使用Multisim自带库里的运放的时候,例如LM324M,发现一个问题,运放的输出电压能达到几百V甚至几千V,而电源明显只有几V而已。输出电压超过电源电压,理论上是不可能的,实际上也是不可能的,那么肯定就是仿真有误了,其实根本原因是Multisim里面运放是三脚模型,根本没考虑电源。我们查看LM...

Multisim导入MOSFET模型

文章来源:NI官网->在Multisim里导入MOSFET 模型 原文网址:http://digital.ni.com/public.nsf/allkb/E1DA418DD7A5E4A1862574B800219513 问题: 如何在Multisim器件里导入以“.MODEL&rd...

关于数码管动态扫描

大家知道驱动一个或者两三个数码管,如果单片机有足够的IO口,我们可以用静态显示,至于什么是静态显示(动态显示的基础),这里不做阐述。 但如果,或者假如我们要点亮8个数码管或者更多,而恰恰单片机IO口不够用的情况下(扩展IO口的不讲),这是就必须用到动态扫描的显示方式了。 什么是数码管动态扫描?所谓...

贴片电阻电容电感封装尺寸

贴片电阻电容电感封装尺寸

贴片常见封装有9种,用两种尺寸代码来表示。一种尺寸代码是由4位数字表示的EIA(美国电子工业协会)代码,前两位与后两位分别表示电阻的长与宽,以英寸为单位。我们常说的0603封装就是指英制代码。另一种是米制代码,也由4位数字表示,其单位为毫米。下表列出贴片电阻封装英制和公制的关系及详细的尺寸。...

STM32串口发送数据首字符丢失解决办法

STM32串口发送数据首字符丢失解决办法

现象: 串口发送数据时,第一个字符丢失 例如,发送“system init\r\n”,最后收到的是“ystem init\r\n”,在此之后发送的数据均正常。 错误代码: 原因分析: TC 和 TXE 标志位在复位的时候被置1 ,这样第一次whil...

Proteus:Simulation is not running in real time解决方法

Proteus:Simulation is not running in real time解决方法

  Simulation is not running in real time due to excessive CPU load 如上图所示,相信这个问题很多人都碰到了。  网上说:原因是电脑CPU运行的速度跟不上单片机仿真的速度。解决方法:① ...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。