首页 > 解决方案 > 如何在 C 中现有字节数组的末尾附加另一个 HEX 值

问题描述

我在谷歌上搜索并在https://www.onlinegdb.com/上检查了我的发现 但到目前为止,我对我的试验和错误并不满意。或许,我不知道该怎么问。我相信这可能已经为很多人所熟知。

通常我从 UART 通信中读取 HEX 值并将其放入缓冲区数组中。但是,为了让事情更简单,我给你那个代码片段;

uint8_t buffer[20] = {0x7E, 0x00, 0x07, 0xAA, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0xCC};
uint8_t newValue = 0x55;

我的目标是追加 newValuebuffer并且必须在本例中的最后一个数组值之后看到新值0xCC

所以,我的问题是如何有效地做到这一点?

请注意:我的一项试验(工作正常,但不是我想要的);

buffer[11] = newValue ;

for(int i=0;i<sizeof(buffer);i++) 
    printf("%02x", buffer[i]);

但是,在这种情况下,我需要知道最后一个值的位置并将位置增加 11(基于 0 的计数)。

标签: carrays

解决方案


推荐阅读