Zapis, który przedstawiłeś: int tablica[ 1 ]; to stworzenie tablicy o stałym rozmiarze i koniec kropeczka. Jeżeli chcesz ją powiększyć, to musisz użyć tablic dynamicznych tak:
1. tworzysz tablicę dynamiczną: int * tablica1 = new int[ 1 ];
2. jeśli chcesz powiększyć o jeden, to tworzysz nową: int * tablica2 = new int[ 2 ];
3. przypisujesz wszystko z tablica1 do tablica2
4. usuwasz tablica1: delete [] tablica1;
Ale spokojnie, wszelkie mechanizmy zostały już wcześniej napisane i wystarczy z nich skorzystać zamiast wynajdować koło na nowo. Należy posłużyć się wektorami.
#include <vector>
// Stworzenie tablicy o rozmiarze 1
vector <int> tablica( 1 );
// Wpisanie do pierwszego elementu tablicy liczby 5
tablica[ 0 ] = 5;
// Zwiększenie tablicy o kolejny element i wpisanie tam 10
tablica.push_back( 10 );
// I do następnego wciskamy 15
tablica.push_back( 15 );
Nie można (w przypadku intów zwiększyć tablicę o jeden i nie wpisać tam wartości).
Łatwo potem operować na takiej tablicy, bo ona sama zapamiętuje swój rozmiar (który jest zmienny)
// Wypisywanie wszystkich elementów tablicy
for( int i = 0; i < tablica.size(); i++ )
cout << tablica[ i ] << endl;
Poczytaj o wektorach, to naprawdę świetna sprawa ;-)
Pozdrawiam.