c - 如何在 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;
我的目标是追加 newValue
,buffer
并且必须在本例中的最后一个数组值之后看到新值0xCC
。
所以,我的问题是如何有效地做到这一点?
请注意:我的一项试验(工作正常,但不是我想要的);
buffer[11] = newValue ;
for(int i=0;i<sizeof(buffer);i++)
printf("%02x", buffer[i]);
但是,在这种情况下,我需要知道最后一个值的位置并将位置增加 11(基于 0 的计数)。
解决方案
推荐阅读
- javascript - 在 javascript 中使用 document.write 创建一个表
- python - 烧瓶中的模态仅显示第一条记录
- javascript - javascript框获取div中的位置x
- angular - 如何根据条件更改容器组件,避免重复其内容
- dart - 使用 num 的 int 和 double 上的抽象被新的 Dart 版本破坏
- swift - UIBarButtonItem 以编程方式更改颜色
- ios - 使用 CLLocationCoordinate2D 的矩形
- linux - 从 vagrant box 从浏览器访问文件
- python - ModuleNotFoundError:导入 visdom 时没有名为“visdom”的模块
- javascript - 如何使用钩子在反应中切换单选按钮的选中值?