如何将uint8_t数组与C中的十六进制值进行比较?

Çağ*_*KME 0 c uint8t

我的代码中有预定义的十六进制值。以下是其中之一。

#define ADDRESS1 0xD445556BD557
#define ADDRESS2 0xED612BDF113B
Run Code Online (Sandbox Code Playgroud)

我也有一个uint8_t数组。喜欢

uint8_t MAC[6];
Run Code Online (Sandbox Code Playgroud)

如何在不编写新函数的情况下比较这两件事?

我已经尝试过

if(MAC == ADDRESS2)
Run Code Online (Sandbox Code Playgroud)

SKi*_*SKi 7

也许您也应该将uint8_t数组用于ADDRESS *并使用memcmp()

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

if (memcmp(MAC, ADDRESS1, sizeof(ADDRESS1)) == 0)
Run Code Online (Sandbox Code Playgroud)