需要将printf的输出作为String或char数组

时间:2017-07-28 12:44:43

标签: c++ arduino

我一直致力于Arduino项目。它有一个关于RFID的书面库MFRC522。我需要更改此库中的某些内容,为此我需要使用printf的输出作为变量。

我的意思是:

Serial.print(F("Card UID:"));
for (byte i = 0; i < uid->size; i++) {
    if(uid->uidByte[i] < 0x10)
        Serial.print(F(" 0"));
    else
        Serial.print(F(" "));
    Serial.print(uid->uidByte[i], HEX);
} 
Serial.println();

通常输出为

Card UID: A6 74 E6 2B

我需要这些ID才能将它们放入数组或类似的东西中。请教我一些方法将它们用作变量。

1 个答案:

答案 0 :(得分:1)

从C,POSIX sprintf查看标准asprintf(更好snprintf,更好,但仅限于Linux open_memstream),或者,在标准C ++中,{{ 3}})或std::ostringstream