Oppure

Loading
13/08/09 17:11
Kobra
Salve a tutti. Avrei bisogno di una mano per la dichiarazione di un oggetto string in modo dinamico.

Per la precisione vorrei creare un ciclo che carica un oggetto string con delle parole inserite dall'utente. Il mio problema è che non conosco il numero delle stringhe che l'utente vuole inserire.
Per intenderci:

#include <iostream>
#include <string.h>

using namespace std;

int main()
{
    string a[numero_che_non_conosco];
    a[0] = "Prima parola inserita";
    a[numero_che_non_conosco] = "Ultima parola inserita";
    return 0;
} 



Spero di essere stato chiaro.

Grazie dell'attenzione.
Ultima modifica effettuata da Kobra 13/08/09 17:14
aaa
13/08/09 22:30
steve__92
se non ho capito male intendi creare un array di string senza sapere quanto potrebbe essere lungo, giusto?

se è così potresti usare vector

ad esempio
#include <iostream>
#include <string>
#include <vector>
using namespace std;

int main()
{
	vector <string> parole; // vettore (una spece di array con dimensioni variabili)
	string parola; // parola da inserire
	do
	{
		cout << "inserisci una parola :";
		cin >> parola;
		parole.push_back(parola); //aggiungi parola alla fine di parole (dimensioni+1)
	}while(parola != "exit"); // per uscire digita exit (come ultima parola in lista)
	int dimensioni = parole.size();
	cout << endl << dimensioni;
	system("pause>nul");
	return 0;
}


poi se vuoi sapere cosa c'è in una certa posizione lo usi come fosse un array
ad esempio se la prima parola che inserisco è "ciccio" e la voglio stampare su schermo basta fare:
cout << parole[1] // o 0, non ricordo mai...

poi con parole.size() hai la dimensione del vettore, quindi se vuoi stampare l'ulitma parola basta fare:

int dimensione_max = parole.size();
cout << parole[dimensione_max];
Ultima modifica effettuata da steve__92 13/08/09 22:39
aaa
14/08/09 14:54
Kobra
Grazie steve__92, mi hai risolto un problema su cui battevo la testa da tre giorni...:k:

Ora provo subito.

Grazie ancora.

Ciao

Kobra
aaa