Есть ли причина не печатать uint64_t напрямую? - PullRequest
0 голосов
/ 28 октября 2019

Я пытаюсь распечатать MAC-адрес платы ESP32. Примеры Arduino определяют это следующим образом:

uint64_t chipid=ESP.getEfuseMac();//The chip ID is essentially its MAC address(length: 6 bytes).
Serial.printf("ESP32 Chip ID = %04X",(uint16_t)(chipid>>32));//print High 2 bytes
Serial.printf("%08X\n",(uint32_t)chipid);//print Low 4bytes.

Тем не менее, я нашел следующий способ сделать это:

  uint64_t chipId = ESP.getEfuseMac();
  Serial.printf("%" PRIx64 "\n", chipId);

Однако второй способ, очевидно, более многословен, глядя наВ интернете я никогда не встречал такого примера с платами Arduino. Есть ли проблема с памятью, и если да, то что?

...