我的代码中有预定义的十六进制值。其中一个在下面。

#define ADDRESS1 0xD445556BD557
#define ADDRESS2 0xED612BDF113B

我还有一个uint8_t数组。就像
uint8_t MAC[6];

在不编写新函数的情况下,如何比较这两种情况?
我已经试过了
if(MAC == ADDRESS2)

最佳答案

也许你也应该使用uint8数组作为地址*,并使用memcmp()

static const uint8_t ADDRESS1[] = {0xD4, 0x45, 0x55, 0x6B, 0xD5, 0x57};

if (memcmp(MAC, ADDRESS1, sizeof(ADDRESS1)) == 0)

08-17 00:51