我在我的代码上运行 pc lint,我收到以下警告Converting enum 'TEST_VALUE' to 'int
。
像函数这样的宏是否可以强制参数为某种类型,或者它总是只是一个 int。我知道我可以让函数configure
传递一个 int ,但随后 pc-lint 也会抱怨。
#define RESULT(x) (((x) & 0x7) << 11)
typedef enum {
RES = 0x00,
RES_TWO,
RES_THREE,
RES_FOUR
} TEST_VALUE;
int configure(TEST_VALUE values)
{
uint32_t temp = RESULT(values);
return temp;
}