Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Cicli con le stringhe
Forum - C/C++ - Cicli con le stringhe

Avatar
nano_Sardo (Normal User)
Newbie


Messaggi: 3
Iscritto: 23/12/2010

Segnala al moderatore
Postato alle 23:47
Sabato, 22/01/2011
Ciao a tutti, ho una domanda da farvi perché mentre creavo un mio programma mi sono imbattuto in un problema: i cicli con le stringhe.
Allora, io devo sostituire a una combinazione di numeri un carattere d i una certa stringa.
Per convertire i caratteri di una stringa in numeri non ho avuto problemi ma a fare il passaggio inverso si.
Per convertire i caratteri di una stringa in numeri ho fatto più o meno così:
Codice sorgente - presumibilmente C++

  1. #include <iostream.h>
  2. #include <string.h>
  3.  
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8. string testo = "";
  9. cin>>testo;
  10. for ( int i = 0; i < testo.length(); i++)
  11. {
  12. if(testo[i]=='a')
  13. {
  14. testo.replace(i,1,"1");
  15. i+=1;
  16. }
  17. }
  18. cout<<testo;
  19. getchar();
  20. return 0;
  21. }



Per il passaggio inverso mi da un errore, quindi ho provato a usa il ciclo "switch" ma niente.
Voi cosa mi consigliate di fare?

Spero di essere stato chiaro :)

Grazie a tutti

Ultima modifica effettuata da nano_Sardo il 22/01/2011 alle 23:48
PM
Avatar
Bonny (Member)
Expert


Messaggi: 437
Iscritto: 24/04/2009

Up
1
Down
V
Segnala al moderatore
Postato alle 14:00
Lunedì, 24/01/2011
esistono delle funzioni del linguaggio C/C++ che permettono di fa questo tipo di conversioni Ecco Zizzius ha scritto un tutorial che fa al caso tuo
http://www.pierotofy.it/pages/guide_tutorials/C/itoa/
p.s. Ha dimenticato che bisogna includere la libreria #include<stdlib.h>
Ciao  a presto:)

PM
Avatar
lorenzo (Normal User)
Guru


Messaggi: 1178
Iscritto: 15/04/2008

Up
0
Down
V
Segnala al moderatore
Postato alle 14:48
Domenica, 23/01/2011
io non ho capito...cosa intendi per passaggio inverso? E che errore ti segnalava?

PM
Avatar
nano_Sardo (Normal User)
Newbie


Messaggi: 3
Iscritto: 23/12/2010

Up
0
Down
V
Segnala al moderatore
Postato alle 19:20
Lunedì, 24/01/2011
Grazie, ora provo e vedo se riesco a fare questo tipo di conversione.

Devo convertire una sequenza di numeri in un carattere. - nano_Sardo - 24/01/11 19:24
PM
Avatar
lumo (Member)
Expert


Messaggi: 449
Iscritto: 18/04/2010

Up
0
Down
V
Segnala al moderatore
Postato alle 21:44
Lunedì, 24/01/2011
Testo quotato

Postato originariamente da Bonny:

esistono delle funzioni del linguaggio C/C++ che permettono di fa questo tipo di conversioni Ecco Zizzius ha scritto un tutorial che fa al caso tuo
http://www.pierotofy.it/pages/guide_tutorials/C/itoa/
p.s. Ha dimenticato che bisogna includere la libreria #include<stdlib.h>
Ciao  a presto:)


perchè usare itoa quando il C++ mette già a disposizione gli strumenti che servono?
Si potrebbe usare semplicemente uno stringstream, oppure volendo fare i C-isti, usare sprintf..

E qual'è la sintassi? - nano_Sardo - 24/01/11 21:46
http://notfaq.wordpress.com/2006/08/30/c-convert-int-to-string/ - lumo - 27/01/11 16:26
PM