Keil常见错误汇总及处理方式
1、
warning: #767-D: conversion from pointer to smaller integer
解释:将指针转换为较小的整数
影响:可能造成的影响:容易引起数据截断,造成不必要的数据丢失。如果出现bug,很难调试。
改正:尽量避免这种转换,避免不了要确定转换的数据不会引起数据丢失。
2、
warning: #177-D:variable "i" was declared but never referenced
解释:变量i定义了,但是没有使用
影响:没有使用的变量,很容易提高代码出错的概率,还浪费了一些栈空间。
改正:对于这个警告,感觉应该修改代码直到没有。确定每一个变量都用到了,没有用到的注释掉,如果需要存在则在函数中调用下。
3、
warning: #188-D: enumerated type mixed with another type
解释:枚举类型混合了其他类型
影响:如果值超过了枚举类型的值,可能造成数据丢失。 改正:尽量避免这样的操作。
4、
warning: #223-D: function "Set_RX8025_INT" declared implicitly
解释:Set_RX8025_INT函数使用前没有显示声明。
影响:具体影响不是很清楚。
改正:在使用前显示声明下。
5、
warning: C3017W: i may be used before being set
解释:变量i或许在赋值前使用
影响:很有可能是漏掉了,某些情况,可能造成使用变量的随机值。
改正:在使用前将变量赋初值,对于这种警告,尽量消除。
6、
warning: #167-D:argument of type "uint8_t *" is incompatible with parameter of type "const char *restrict" require.async(['wkcommon:widget/ui/lib/sio/sio.js'], function(sio) { var url = 'https://cpro.baidustatic.com/cpro/ui/c.js'; sio.callByBrowser( url, function () { BAIDU_CLB_fillSlotAsync('u2845605','cpro_u2845605'); } ); });
解释:uint8_t *类型的参数与const char * restrict类型的参数不兼容。参数传递时,不同类型的警告。
影响:可能提高代码的bug率。
改正:首先避免这样做,其次如果避不开要详细检查传入的参数。
7、
warning: #69-D: integer conversion resulted in truncation
解释:整数转换导致数据截断
影响:可能造成数据丢失,出现错误。
改正:关于这种警告,应该详细考虑。确定转换都在预期的结果内。
8、
warning: #186-D: pointless comparison of unsigned integer with zero
解释:无符号整形和0的无意义比较
影响:一个潜在的问题,判断无符号数大于等于0。由于无符号数没有负数,这种判断恒为真。
改正:详细查看代码的意图,消除这样的判断。
9、
warning: #940-D: missing return statement at end of non-void function "fun1"
解释:非void型函数缺失返回语句。有返回值的函数,缺少了return语句。也有可能是在函数体中有但是最后一行没有。
影响:不是很了解。
改正:在非void类型函数的最后一行添加return语句。
10、
warning: #111-D: statement is unreachable
解释:语句执行不到
影响:由于前边的代码造成此段代码,永远不会执行到。
改正:应该查看此种警告,确定是我们需要的。并且尽量将此种警告消除。
11、
warning: #1-D: last line of file ends without a newline 解释:文件最后一行缺少一新行。
(window.cproArray = window.cproArray || []).push({ id: "u3054369" });
影响:避免当被include的文件展开时,前一个文件的最后一行与后一个文件的第一行直接连接成一行,造成错误。
改正:一般一个.c .h文件,要在最后留一个空行。
Keil常见错误汇总及处理方式的更多相关文章
- 李洪强iOS开发之OC常见错误汇总
// // main.m // 16 - 常见错误汇总 // // Created by vic fan on 16/7/13. // Copyright © 2016年 李洪强. All r ...
- PHP常见错误汇总
日常开发和调试的时候,经常会遇到一些错误,光怪陆离的不知所以,所以,特此将错误汇总一下,借鉴!!! 1. 原因分析: 一般可能是该文件出现了问题,检查一下代码和格式,是否出现开始的地方出现了空格,或 ...
- eclipse远程debug服务器上的项目(Tomcat),打开、关闭及常见错误汇总
我们工作中,有时候测试/生产环境,出现的结果会与我们预计的不一样,只看代码又看不出去问题所在,这个时候就需要远程debug下服务器上的项目. 注意:(1)需要debug的代码,本机代码需与服务器上一致 ...
- hadoop常见错误汇总及解决办法一
我们经常会遇到一些问题,而且可能会重复性遇到,这些方案可以收藏为以后备用.我们经常遇到如下问题:1.两次以上格式化造成NameNode 和 DataNode namespaceID 不一致,有几种解决 ...
- Android开发常见错误汇总
[错误信息] [2011-01-19 16:39:10 - ApiDemos] WARNING: Application does not specify an API level requireme ...
- Xcode常见错误汇总
1.error: macro names must be identifiers YourProject_prefix.pch 原因: 因为你弄脏了预处理器宏,在它处于<Multiple Val ...
- Spark常见错误汇总
1. Spark Driver cannot bind on port0, SparkContext initialized failed 如果是通过spark-submit等命令行提交的任务,在sp ...
- 服务器是R710常见错误汇总:
报错: E1422 CPU 1 machine check error . power cycle AC 解决方案: 系统 BIOS 已报告机器检查错误.请断开系统的交流电源 10 秒,然后重新启动系 ...
- 分布式进阶(十一) Docker 常见错误汇总
NO.1 以上添加网桥的命令在Ubuntu14.04中是不可行的.正确的命令如下: brctl addbr br0 ifconfig br0 192.168.1.188 netmask 255.255 ...
随机推荐
- myeclipse 添加mybatis generator插件
在红色的方框中输入下面的网址,一直下一步,最后finish即可. https://dl.bintray.com/mybatis/mybatis-generator/
- hadoop之editlogs和fsimage
一.概述 hadoop的namenode和secondarynamenode: 1. namenode负责 负责客户端请求的响应 元数据的管理(查询,修改) 2. 元数据管理 namenod ...
- DenseNet 论文阅读笔记
Densely Connected Convolutional Networks 原文链接 摘要 研究表明,如果卷积网络在接近输入和接近输出地层之间包含较短地连接,那么,该网络可以显著地加深,变得更精 ...
- JavaWeb学习 (十八)————JSP标签
一.JSP标签介绍 JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护. 二.JSP常用标签 ...
- Maven教程4(私服-nexus)
仓库管理器也叫私服或代理仓库 仓库管理器有两个服务目的:首先它的角色是一个高度可配置的介于你的组织与公开Maven仓库之间的代理,其次它为你的组织提供了一个可部署你组织内部生成的构件的地方. 1Nex ...
- 我对alias的重新认识:通过alias让rm更安全
bash&shell系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html rm的悲剧总是发生在不经意之间,所以无论是在shell脚本中还 ...
- c++中虚析构函数
当指向基类的指针指向新建立的派生类对象而且基类和派生类都调用new向堆申请空间时,必须将基类的析构函数声明为虚函数,从而派生类的析构函数也为虚函数,这样才能在程序结束时自动调用它,从而将派生类对象申请 ...
- C# .aspx 页面更换命名空间
1.选中命名空间,右键单击,选择重构,之后选择重命名.如下图: 2.弹出重命名对话框 3.重写你需要的名字,点击确定. 4.这里重点注意了,不可直接点击应用,否则你会后悔的.你必须对应的看看那个是否是 ...
- java错误分析之junit测试错误(实验一)
本文转自:https://www.cnblogs.com/anny0404/p/5275595.html 在原作者的基础上进行部分添加,也很感谢原作者这篇博文,帮我分析与解决问题! 原文: 下载了最新 ...
- Python3 系列之 环境配置篇
以下所有操作是基于 Windows10 和 Python3.6 来进行的,其它平台和 python 版本请自行百度. 高效使用 Visual Studio Code 系列 环境安装 1.Python ...