Salve a tutti,
sono alla ricerca di qualche utility sulla conversione
dei dati all'interno dell'Arduino.
In particolare mi piacerebbe passare da un char definito come
insieme di caratteri ad un int (chiaramente il char conterrà solo numeri).
Sapete che ci sia qualcosa di già pronto nelle librerie o devo inventarmi qualcosa io?
Grazie mille
Lorenzo
qui trovi doc
Grazie mille!
;D
ciao kappollo
se hai una stringa
int= atoi(stringa);
dove
stringa[0] = 1
stringa[1] = 5
stringa[2] = 7
stringa[3] = "0" // carattere fine stringa
int= atoi(stringa);
int sará 157
ciao Uwe
guarda che con atoi pero' deve anche includere roba...
tipo non ricordo quale dei due.. o forse entrambe...
altrimenti quel codice non compila
#include <stdio.h>
#include <stdlib.h>
Sei sicuro? Una volta l'ho usato per fare una prova e lo compila senza includere librerie esterne. Posto lo sketch:
char pippo[] = "1250";
int pluto = 0;void setup()
{
Serial.begin(9600);
}void loop()
{
pluto = atoi(pippo)*2;
Serial.println(pluto); //restituisce 2500
delay(1000);
}
allora mi sbaglio
ciao a tutti
Per usare ATOI() non serve includere nessuna libreria
Ciao Uwe
Leggendo i vostri post , sorge una domanda: serve oppure no il carattere "0" per atoi ?
Nell'esempio Uwefed c'è, in quello Pelletta no :o
serve! Il simbolo di fine stringa é il "0".
ciao Uwe
senza usare atoi puoi fare il cast con (int)
ricordati che fare un int cast di un char restituisce il codice asci del carattere.
ad esempio
char c = '1';
int n = (int)c;
n vale 49 che è il codice ascii di 1.
qui la tabella ascii: http://www.ascii-code.com/