Zaczynam z c++ nie wiem czy dobrze zrozumiałem ale mając kod :
int *tab = new int[20];
//wypełnianie tablicy:
for(int i = 0; i < 20; i++)
tab[i] = i;
// pokazanie tresci - sposób niepoprawny przynajmniej dla kompilatora. Czemu ?
for(int i = 0; i < 20; i++) // wywala błąd ale pokazuje liczby od 0 do 19
cout << *tab++;
// sposób poprawny :
int *wsk = tab; // ustawienie wskaznika na tab[0]
for(int i = 0; i < 20; i++)
cout << *wsk++; // nie wywala błędu i pokazuje liczby od 0 do 19 ;D
// kasowanie tab
delete [] tab;
Dlaczego sposób z *tab++ jest niepoprawny ?
sorry za double post ale zapomniałem dopisać w tamtym pytania a przycisnąłem "wyślij"
W niepoprawnym przykładzie wypisuje mi wszystkie liczby przy czym wywala error. To przez delete [] tab iż wskaźnik nie jest ustawiony na początek tablicy ? ;O