gpt4 book ai didi

c++ - 将十六进制值存储为字符串(Arduino 项目)

转载 作者:太空狗 更新时间:2023-10-29 21:38:08 25 4
gpt4 key购买 nike

我正在做一个 Arduino 项目,我想将一个十六进制值存储为字符串。

例如:十六进制为C697C63B

for (byte i = 0; i < bufferSize; i++) {
Serial.print(buffer[i], HEX);
}

我想将字符串存储为 x = "C697C63B";

  String CardID = "";
for (byte i = 0; i < bufferSize; i++) {
CardID += (buffer[i],HEX);
Serial.println(CardID);
}

但 Sting 存储为 CardID = 16161616

抱歉,我才开始学习 C++ 一个星期,我已经花了 3 天时间来寻找答案。

好的,我现在找到了答案,谢谢大家的帮助

  String CardID = "";
for (byte i = 0; i < bufferSize; i++)
CardID += String(buffer[i], HEX);
Serial.print(CardID);

最佳答案

你应该使用一个ostringstream:

auto outstr = std::ostringstream{};
outstr << std::hex << 0xC697C63Bul;
auto myHexString = outstr.str();

关于c++ - 将十六进制值存储为字符串(Arduino 项目),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36058764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com