Go Down

Topic: convertire String (Read 785 times) previous topic - next topic

ilmandorlone

ho un piccolo problema con un programma che dovrei trovare l'errore in una variabile di tipo String.
non so fose si creano degli spazi o roba del gene involontariamente nella variabile perché se pongo la mia variabile che teoricamente dovrebbe essere es. variabile(teoric. "a") == ad una "a" mi mi dice che non è uguale.
so che teoricamente è "a" perché me la sono fatta stampare su seriale. il problema è che se stampo una string vedo solo la "a"
dato che credo che ci sia altra roba devo sapere tutti i caratteri e spazi della variabile.
in sostanza la mia domanda è se posso convertire la String i qualcosa o stampare ogni singolo carattere come ACII
Ps. lo so come domanda è molto contorta ma è più facile a fare che dire

m_ri

usa qualcosa di simile,no?
Code: [Select]

for(char i=0;i<Str.length();i++)Serial.println((int)Str.at[i]);

ti avverto che può avere errori e non è ottimizzato..

sei sicuro che entrambi gli argomenti dell'== siano String?o almeno il valore a sinistra?altrimenti potrebbe Xes fare un confronto tra indirizzi..

ilmandorlone

non riesco ad usare il tuo ciclo mi da errore

leo72


ho un piccolo problema con un programma che dovrei trovare l'errore in una variabile di tipo String.
non so fose si creano degli spazi o roba del gene involontariamente nella variabile perché se pongo la mia variabile che teoricamente dovrebbe essere es. variabile(teoric. "a") == ad una "a" mi mi dice che non è uguale.
so che teoricamente è "a" perché me la sono fatta stampare su seriale. il problema è che se stampo una string vedo solo la "a"
dato che credo che ci sia altra roba devo sapere tutti i caratteri e spazi della variabile.
in sostanza la mia domanda è se posso convertire la String i qualcosa o stampare ogni singolo carattere come ACII
Ps. lo so come domanda è molto contorta ma è più facile a fare che dire

Appunto  ;)
Intanto partiamo da una cosa. Il tuo codice. Dov'è? Almeno vediamo cosa stai facendo. Perché potresti fare conversioni fra tipi. Esistono stringhe di tipo String e stringhe di tipo char* .

ilmandorlone

risolto succedeva che in un ciclo while aggiungevo lettere a una frase
string frase;
String lettera;
while(frase="a"){
  frase=frase+lettera;
}
ma la prima volta nel ciclo frase era uguale a "" credo che è quello l'errore
ora ho messo che la frase la prima volta è uguale a lettera(frase=lettera;) per poi nei cicli successive frase è uguale a sopra(frase=frase+lettera;) e funziona tutto

m_ri

occio: nel while usa il ==

ilmandorlone

si si ho copiato a mano e me lo sono dimenticato ma c'è

Go Up