如何在uint8_t数组中存储HEX?

时间:2017-08-28 11:32:19

标签: c mbed

我想将HEX值存储到uint8_t数组中。下面是我尝试使用的代码并将其传递给设置资源值:

const static uint8_t PSK_KEY[] = "31383031";
security->set_resource_value(M2MSecurity::Secretkey, PSK_KEY, sizeof(PSK_KEY) - 1);

或者我需要在ASCII中设置PSK_KEY吗?

2 个答案:

答案 0 :(得分:2)

这取决于你的意思。

"存储十六进制" (你为什么用大写字母写?)有点不清楚。

如果PSK的值是四个字节0​​x31,0x38,0x30,0x31,那么你需要以不同的方式写它以获得正确的结果:

static const uint8_t PSK_KE[] = "1801";

当然这四个是ASCII,所以你可以表达与文本相同的数据:

{{1}}

答案 1 :(得分:0)

您可以使用

PSK_KEY[]= { 0x31,0x38,0x30,0x31}

OR

PSK_KEY[]= { '1','8','0','1'}