相关问题没有发现。很可能这是超级新手,但我还是会问/我在我的。h文件中有以下内容:
typedef union _API_Packet_0x90{
uint8_t packet[26];
struct _pack_struct {
uint8_t start;
uint8_t length[2];
uint8_t addr64[8];
uint8_t addr16[2];
uint8_t options;
uint8_t rfData[4];
uint8_t chksum;
};
} API_Packet_0x90;
API_Packet_0x90 ap90;
这是一个微控制器的代码,我使用xc8工具链(前Hi Tech C)。编译器说:
xbee_api.h:19:警告:缺少基本类型;int认为
xbee_api.h: 19:错误:";"
Xbee_api.h:19:警告:缺少基本类型;int认为
Xbee_api.h:21:警告:缺少基本类型;Int假设
,然后继续(错误太多)
我认为它是uint8_t,所以我添加了#include <ctypes.h>
。不。我认为这是关于名字,所以我尝试了各种各样的戏剧,如
typedef union {
uint8_t packet[26];
struct _pack_struct {
};
} API_Packet_0x90;
或
typedef union {
uint8_t packet[];
struct _pack_struct {
};
} API_Packet_0x90;
或其他人。没有什么帮助。我被卡住了,因为我相信我是正确地遵循语法。任何帮助吗?
uint8_t
位于stdint.h
中,而不是ctype.h
中(也不是ctypes.h,没有这样的头文件存在)。您必须使用遵循新版本C标准的编译器才能找到此头文件(C99或C11标准)。