PDA

Visualizza la versione completa : [C++] Creazioni matrici di cui non so la dimensione


N4PoLeOnE
03-02-2007, 12:12
Salva a tutti ho il seguente problema

Ho file .txt nel seguente formato

3
4
1 0 1 0
1 1 1 1
0 1 1 0

Cioè le prime due righe danno le dimensioni della matrice e nelle seguenti ci sono i valori con un spazio in mezzo.

Quello di cui ho bisogno io è che per ogni file .txt di input il programma crei una matrice delle dimensioni riportate nelle prime due righe e prenda come valori i numeri riportate nelle righe successive.

Come posso fare?

Per ora ho fatto questo in builder 6:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
if (OpenDialog1->Execute())
Memo1->Lines->LoadFromFile(OpenDialog1->FileName);
else
Memo1->Clear();
Edit1->Text=Memo1->Lines->Strings[0];
Edit2->Text=Memo1->Lines->Strings[1];
int righe=Memo1->Lines->Strings[0].ToInt();
int colonne=Memo1->Lines->Strings[1].ToInt();
}

In pratica nella form si puo sfogliare il disco fisso per cercare una matrice, dopodichè la matrice viene uppata in una memo. E le prime due righe vengono convertite in int!!!

Ora dovrei creare la matrice di dimensione righe per colonne, devo usare per forza milioni di puntatori?

cloix86
03-02-2007, 20:08
La dichiarazione delle matrici, come qualunque altro array, deve essere fatto prima dell'inizio del programma, in quanto il compilatore deve assegnare lo spazio di memoria relativo all'array quindi non puoi realizzare un'applicazione che ogni volta che viene eseguita (non compilata!) crei delle matrici a seconda delle richieste. Potresti crearne una te che fa da caso limite cioè imponi una dimensione arbitraria te.

Loading