I'm working on an Arduino project and I want to store a hex value as string.
eg: Hex is C697C63B
for (byte i = 0; i < bufferSize; i++) {
Serial.print(buffer[i], HEX);
}
I would like to store the String as x = "C697C63B";
String CardID = "";
for (byte i = 0; i < bufferSize; i++) {
CardID += (buffer[i],HEX);
Serial.println(CardID);
}
But the Sting is stored as CardID = 16161616
Sorry I just start C++ for a week and I spend 3 day already just to find answer.
Okay i found the answer now thank you everyone that help
String CardID = "";
for (byte i = 0; i < bufferSize; i++)
CardID += String(buffer[i], HEX);
Serial.print(CardID);
You should use an ostringstream
:
auto outstr = std::ostringstream{};
outstr << std::hex << 0xC697C63Bul;
auto myHexString = outstr.str();
std :: ostringstream + IO操纵器hex可能是你想要的。
You can use c-style sprintf :
char str[100];
sprintf(str, "%08x", HEX);
#include <stdio.h>
int main(void) {
int nHex = 0xC697C63B;
char pHexStr[100];
sprintf(pHexStr,"%x",nHex);
fprintf(stdout, "%s", pHexStr);
return 0;
}
So simple in Arduino Programming Language to convert hex to be a string.
Just doing:
char StringValue[ ]=String(0xFF,HEX)
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.