2

当我将此代码上传到 Arduino Atmega2560 时发生错误。这是我为程序中的 .c 文件创建的库文件。

错误是:
herkulex.c:16: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

出现错误时突出显示“类”一词,该错误位于文件中(代码如下所示)

#ifndef herkulex_lib
#define herkulex_lib

#include <Arduino.h>
#include <Wire.h> 
#include<inttypes.h> 

class herkulex
{
  public: 
    herkulex();
    void hklx_Init(unsigned long ulBaudRate);
    void hklx_SendPacket(DrsPacket stPacket);
    unsigned char hklx_ucReceivePacket(DrsPacket *pstPacket);
    void hklx_RemoveInvalidData(void);

//no private  
};

#endif /* HERKULEX_H_ */

我可以知道这段代码有什么问题吗?谢谢!

4

2 回答 2

6

您正在编译一个包含 C++ 的 C 文件。C 编译器拒绝 C++ 语法。

而是将其编译为 C++ 程序。

于 2012-11-13T08:52:42.180 回答
1

这里是不是少了一个space:?

#include<inttypes.h> 
于 2012-11-13T09:00:00.313 回答