Traduzione please

Ciao. Leggendo un esempio di codice su RFID-RC522 mi sono imbattuto in questa riga che non riesco a capire cosa fa:

Serial1.print(buffer[i] < 0x10 ? " 0" : " ");

Qualcuno mi può spiegare per favore cosa fa?

Direi che scriva su Serial1 " 0" oppure " " a seconda che il valore di buffer[i] sia minore di 16 (0x10) o meno.

? È un "operatore ternatio".
Corrisponde in molti casi a un if-else.
vedi Programmiamo

Ciao Uwe

Antonio81:
Qualcuno mi può spiegare per favore cosa fa?

E' equivalente a:

if (buffer[i] < 0x10)
  Serial1.print("0");
else
  Serial1.print(" ");