Ciao a tutti!
Di sicuro sarà una cavolata -.-'' ma vabbè.
Io leggo dei byte dalla porta seriale del mio Arduino, e avrei la necessita di convertire questi byte in stringhe. Ma non voglio il carattere corrispondente, se mi arriva per esempio 0x0B dalla seriale voglio convertirlo in "0B".
E' possibile?
spintf come primo argomento vuole IL PUNTATORE alla stringa (quindi non "il carattere"), come secondo argomento il % deve essere seguito dal TIPO di dato, ed infine la/le variabili le passi come argomento successivo. Quindi sarebbe:
sprintf(buffer, "%d", x);
ma così perdi il contenuto di buffer; per risolvere, prima di tutto buffer[0] nel setup lo poni = '\0' se no si incasina tutto (e anche quando vuoi azzerare la stringa, basta questa operazione) e poi:
sprintf(buffer, "%s%d", buffer, x);
ma puoi fare di meglio: evitare completamente l'uso di sprintf:
buffer[j]=x;
se vuoi invece convertire (non è il tuo caso, ma per completezza) dovresti fare:
buffer[j]=x+'0';//in caso di numeri, con le lettere il procedimento è simile ma non ha molto significato all'atto pratico