找回密码
 注册
关于网站域名变更的通知
查看: 462|回复: 0
打印 上一主题 下一主题

Keil警告和错误语句与消除方法笔记

[复制链接]
  • TA的每日心情
    开心
    2023-5-15 15:14
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
     楼主| 发表于 2024-7-5 11:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    本帖最后由 Heaven_1 于 2024-7-5 11:12 编辑 8 ?6 S; S, a3 A- L, W$ d  T1 U

    ) r; e1 J! P, a( [+ m' q
    遇到的keil相关错误,警告内容在这里进行更新

    . w/ Z. p% {/ M6 m5 F6 b
    Warning:

    ! ]; ^! p# u/ M- P" L: O" f0 M5 k6 U; H
    #1-D: last line of file ends without a newline 文件最后一行不是新行
    + ^2 t7 _$ [6 l" S
    解决:保证文件最后一行什么符号也没有。
    1 i8 {1 y$ \5 S4 b# a
    #167-D: argument of type "x" is incompatible with parameter of type "xxx"   类型“x”的参数与类型“xxx”的参数不兼容
    $ o9 R6 m3 ^1 O/ e/ q3 c$ j
    解决:之所以是警告多是因为虽然声明的参数不同但是依然可以兼容,例如说char型和uint8都是8位的1字节的数据,按照需求进行更改
    6 a7 n4 O5 r6 d
    #177-D: variable ""  was declared but never referenced  变量""声明了但是从未引用过

    3 w: G; j# J; T) |7 u. E9 o" C# V6 r
    解决:删除这个变量,但有时候是因条件(比如if)赋值时候才使用到的变量也可能会产生这一句警告。
    & F7 r0 r9 }; G  j
    #940-D: missing return statement at end of non-void function "xxxx"  没有返回值
    : j! K8 d+ D2 v% W
    解决:检查并在所指出的函数中添加返回值语句,通常是编写程序时候设定了返回类型但是没有设定返回值,需要注意的是这个问题有时候会导致建立文件时产生错误。
    1 T  X/ y3 f+ M- l4 X
    Error:

    1 U& a: J( H2 |& |; Q4 K" g. k
    L6200E: Symbol xxx multiply defined    符号xxx多重定义

    + f1 M0 J. w. |# ~
    解决:这个问题困扰了一个上午,用了各种排除法,注释法来确定到底是哪里出错。先是注释掉了所有在其他文件中对这个函数的引用,然后试着新建一个文件,重新放入函数,重写的文件就没有出错,但是只要是在这个文件中定义函数无论是否引用就都会出现错误,最后发现是有个include写错了,写成了include "xxxx.c",导致一直出现这样一个警告。

    7 ^) u0 b8 k: `! e
    #159: declaration is incompatible with previous "xxxxx"  

    2 ?# I6 n2 N5 ?- _7 U& y
    解决:这个问题由在文件中调用某个函数,但是在调用语句之后才声明函数导致,向头文件添加声明,或者在使用该函数语句前声明这一个函数

    : ^" ^4 F2 T3 \* j* K3 a: o  m0 H
    #114: function "xxx" was referenced but not defined
    & U9 \. J7 U" \7 M% i9 N
    解决:去除发生错误的这个函数.c和.h文件的static静态声明

    3 F$ I/ ?4 \& }" G4 {2 P4 x2 \$ I! M1 l) d

    ) [- T0 a( r3 I  r! j( @8 ?
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-19 06:15 , Processed in 0.125000 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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