Следующий фрагмент кода:
unsigned char * get_id(unsigned char *buffer)
{
unsigned int i;
for(i=0; i<8;i++)
buffer[i] = read_byte(); // Returns uint8_t
return buffer;
}
В конце у меня есть 64-битный идентификатор.Я хотел бы вызвать get_id () и напечатать возвращаемое значение (ID) с помощью printf.Как мне это сделать?
Мое решение:
unsigned char tmp_buf[8];
unsigned char *ptr;
ptr = get_id(tmp_buf);
printf("ID = %02x %02x %02x %02x %02x %02x %02x %02x\n", ptr[7], ptr[6], ptr[5]...);
Это довольно ужасно, и мне это не очень нравится, но как напечатать его в "одном" небольшом printf-условии