PDA

View Full Version : [C] Incremento stringa


ugo86
25-02-2007, 21:23
Ciao a tutti ragazzi!

Vorrei creare un programma che mi incrementi IL NOME di una stringa.

heheheh, lo so che sembro BLASFEMO per voi informatici... però mi è indispensabile poterlo fare.


Utilizzo 4 stringhe chiamate: ugo1, ugo2, ugo3, ugo4

Dovrei gestire i numeri del nome (OVVERO 1, 2, 3, 4)... come se fossero delle variabili separate... distinte dal nome... E' POSSIBILE???


Daje ragazzi che voi siete forti!

Vi riporto una bozza del programma (che non c'entra assolutamente niente con il mio programma, ma rende l'idea del problema che devo affrontare... vi prego aiutatemi...)

main(){

//creazione 5 stringhe
char ugo1[20]= "ciao";
char ugo2[20]= "salve";
char ugo3[20]= "Buongiorno";
char ugo4[20]= "Buonasera";
char ugo5[20]= "Buonanotte";


//"Soluzione Banale"
//printf("%s %s %s %s %s", ugo1, ugo2, ugo3, ugo4, ugo5);


//PROBLEMA REALE!!!
for (i=1; i<=5; i++){
printf("%s ", ugoi); //COMPLETAMENTE INVENTATOOOOO!!!
}

}

La "Soluzione Banale" da' l'idea di cosa ho intenzione di stampare.

Vi prego trovate un modo per utilizzare quell'incremento...


P.S. Considerando l'enorme semplificazione che ho fatto, il problema è proprio che nel mio programma vero, quella soluzione banale non c'è perchè non è che devo stampare una stringa... DEVO PASSARE UNA STRINGA ALLA VOLTA AD UNA FUNZIONE CHE NE LEGGE SOLO UNA!

Il problema è che non so quante stringhe gli devo passare... gestisco tutto tramite una variabile che sa IL NUMERO DI STRINGHE... in pratica l'unica soluzione è incrementare sto nome e passarlo alla funzione... ESISTE UNA SOLUZIONE???

Premier
26-02-2007, 00:09
Ciao a tutti ragazzi!

Vorrei creare un programma che mi incrementi IL NOME di una stringa.

heheheh, lo so che sembro BLASFEMO per voi informatici... però mi è indispensabile poterlo fare.


Utilizzo 4 stringhe chiamate: ugo1, ugo2, ugo3, ugo4

Dovrei gestire i numeri del nome (OVVERO 1, 2, 3, 4)... come se fossero delle variabili separate... distinte dal nome... E' POSSIBILE???


Daje ragazzi che voi siete forti!

Vi riporto una bozza del programma (che non c'entra assolutamente niente con il mio programma, ma rende l'idea del problema che devo affrontare... vi prego aiutatemi...)

main(){

//creazione 5 stringhe
char ugo1[20]= "ciao";
char ugo2[20]= "salve";
char ugo3[20]= "Buongiorno";
char ugo4[20]= "Buonasera";
char ugo5[20]= "Buonanotte";


//"Soluzione Banale"
//printf("%s %s %s %s %s", ugo1, ugo2, ugo3, ugo4, ugo5);


//PROBLEMA REALE!!!
for (i=1; i<=5; i++){
printf("%s ", ugoi); //COMPLETAMENTE INVENTATOOOOO!!!
}

}

La "Soluzione Banale" da' l'idea di cosa ho intenzione di stampare.

Vi prego trovate un modo per utilizzare quell'incremento...


P.S. Considerando l'enorme semplificazione che ho fatto, il problema è proprio che nel mio programma vero, quella soluzione banale non c'è perchè non è che devo stampare una stringa... DEVO PASSARE UNA STRINGA ALLA VOLTA AD UNA FUNZIONE CHE NE LEGGE SOLO UNA!

Il problema è che non so quante stringhe gli devo passare... gestisco tutto tramite una variabile che sa IL NUMERO DI STRINGHE... in pratica l'unica soluzione è incrementare sto nome e passarlo alla funzione... ESISTE UNA SOLUZIONE???

Certo che esiste, devi creare un "vettore di stringhe" una sorta di matrice bidimensionale.


string [] vettoreStringhe= {"Ciao","io","sono","Premier"}


in questo modo riferendoti all'elemento


vettoreStringhe[3]


ti starai riferendo alla stringa "Premier".

Fammi sapere.
Ciao

andbin
26-02-2007, 08:33
Bisogna usare un array:
char *ugo[] = { "ciao", "salve", "Buongiorno", "Buonasera", "Buonanotte" };
int i;

for (i=0; i<5; i++)
printf ("%s ", ugo[i]);

ugo86
26-02-2007, 09:00
Grazie mille ragazzi! Non ci avevo proprio pensato al vettore di stringhe!!! :D




string [] vettoreStringhe= {"Ciao","io","sono","Premier"}




Ma che comando è "string" ? E' un comando di c++, giusto? Io uso c... quindi "string" non dovrebbe funzionare... ?

andbin
26-02-2007, 09:17
Ma che comando è "string" ? E' un comando di c++, giusto? Io uso c... quindi "string" non dovrebbe funzionare... ?Esatto string è del C++. Tra l'altro la sintassi è sbagliata. Si dovrebbe fare:

string vettoreStringhe[] = {"Ciao","io","sono","Premier"};

ugo86
26-02-2007, 14:37
andbin sei un fenomeno!!! ;)