C - 定义,#include和重新定义

时间:2014-01-17 04:30:29

标签: c

我有一个已知可以在其他人的机器上编译的驱动程序,但是,它不在我的(工具链/编译器的区别?)。我得到了error: implicit declaration of function '__REG' [-Werror=implicit-function-declaration]。这是导致它的代码:

enum {
#define __REG(a,b2,b1,c,d,e,f) a,
#include "mycodec-i2c.h"
#undef __REG
};

然后在代码中......

static const mycodec_reg_t mycodec_data[]=
{
#define __REG(a,b2,b1,c,d,e,f) c,
#include "mycodec-i2c.h"
#undef __REG
};

这在C中真的合法吗?我该如何解决它?

头文件包含大量寄存器定义。

0 个答案:

没有答案