• D:Keil_v5ARMARMCCBin..includestring.h(321): error: #169: expected a declaration


    正点原子中源码FreeRTOS在使用:

    string.h第321行:(报错)

    +extern _ARMABI void *memset(void * /*s*/, int /*c*/, size_t /*n*/) __attribute__((__nonnull__(1)));

    错误信息为:

    D:Keil_v5ARMARMCCBin..includestring.h(321): error:  #169: expected a declaration
      +extern _ARMABI void *memset(void * /*s*/, int /*c*/, size_t /*n*/) __attribute__((__nonnull__(1)));
    ..HARDWARETIMER imer.c: 0 warnings, 1 error

    我的疑惑是:

    +extern _ARMABI void *memset( /*  ***  */);

    为什么在extern前面会出现+,而且多个程序源码中的string.h都有+

    解决方案:

    方法1:删除+

    方法2:

    用以下语句:

    extern _ARMABI void *memset(void * /*s*/, int /*c*/, size_t /*n*/) __attribute__((__nonnull__(1)));

    替换源码中的:

    +extern _ARMABI void *memset(void * /*s*/, int /*c*/, size_t /*n*/) __attribute__((__nonnull__(1)));

    结果显示:

    Build target 'FreeRTOS'
    "..OBJLED.axf" - 0 Error(s), 0 Warning(s).
    Build Time Elapsed:  00:00:01

    无报错!

    感谢博主(https://www.cnblogs.com/sunny99/)

    sumoier

    对本文的支持 

  • 相关阅读:
    总结html5
    css加载方式link和@import的区别!
    JavaScript
    log4j log for java
    异常
    内部类
    抽象类和接口,封装、继承、多态
    类和对象
    html 基础知识
    html表单
  • 原文地址:https://www.cnblogs.com/Yi-920259020/p/13784303.html
Copyright © 2020-2023  润新知