Tablice

0

witam

mam pytanie czy w C# mozna tworzyc tablice bez okreslania wielkosci ??

chce zapisywac Logi do kilku tablicy i wczytywac je do boxu w miare potrzeby

a jezeli musi byc zadeklarowana wielkosc tablicy to jaka moze byc maksymalna :) ??

pzdr Andrzej

0

od niedawna się bawię c# ;]
więc wielkość tablicy musi być zdeklarowany. choć nie musi być przypisana jej wielkość na sztywno.
np. string text = richTextBox1.Text;
int[] tab =new int[text.Length];
lub

        int[] tab =new int[199];

jeśli się mylę to mnie poprawić ;].

0

czyli moge za kazdym razem deklaroac wielkosc tablicy ?? i nie wymaze jej poprzedniej zawrtosci ??

i++;
string[] log1  = new string[i+1];
log[i] = "moj kolejny wpis\n";

az zaraz sprawdze :)
pzdr Andrzej

0

niestety nie dziala :(

zeruje tablice :(

 int i;
        string[] log1;
        private void button11_Click(object sender, EventArgs e)
        {
            i++;
            log1 = new string[i + 1];
            log1[i] = i.ToString()+" moj kolejny wpis\n";
        }

        private void button12_Click(object sender, EventArgs e)
        {
            for (int j = i; j >= 0; j--)
            {
                richTextBox1.Text += log1[j];
            }
        }

pzdr Andrzej

0

string text = richTextBox1.Text;
int[] tab =new int[text.Length];

dzieki temu tablica dostosowuje się do rozmiaru np. ilości znaków w pliku.

a za każdym razem nie można deklarować tablicy.

a co konkretnie ma program robić ??;>

0

Jeżeli chcesz zmienić rozmiar zadeklarowanej już tablicy, to użyj metody Array.Resize - wtedy tablica nie bedzie zerowana.

0
dhug napisał(a)

a co konkretnie ma program robić ??;>

co jakis czas po spelnieniu warunkow ma wpisac do do tablicy date,godzine i spelnione moje warunki :)

Array.Resize powinno pomoc tylko musze najpierw w dokumentacji to poszukac :D

Edit
Dzieki wielkie dziala :)
Array.Resize(ref log1, i + 1);

pzdr Andrzej

0

Zrób to na generycznej Liście, która trzyma obiekty których potrzebujesz (przechowują datę, nazwę etc (te obiekty w liście)), a potem ewentualnie metoda .ToArray() i działa ;]

1 użytkowników online, w tym zalogowanych: 0, gości: 1