Witam, mam malutki problem: (ten post juz byl, teraz go spreyzowalem mam nadzieje ze ktos mi pomoze)
mam plik o nazwie mapa.txt w ktorym przetrzymuje mape do mojej gierki
postac pliku:
3 //wymiar X np.3
5 //wymiar Y np.5
000 //wartosci pol
000 //np. jak 0 to oznacza trawe
000 //np. jak 1 to oznacza drzewko
000
000

w funkcji ladowania mapy wczytuje najpier 1 linie do tabX, potem druga do tabY(chyba lepiej bylo by normalnie wczytac to do int)

potem wyciagam wartosc X z tabX i Y z tabY i mam wymiary dla tablicy dynamicznej na moja mape

int **tab;
...i robie tablice...
dodatkowo robie sobie tablice o wymiarach X aby wczytywac linijke z pliku
potem musze ta linijke wpakowac do tablicy 2D

mam nadzieje ze nie zakrecilem...problem w tym ze niby to dobrze dziala ale jak czyta pierwsza linijke to np. powinien do tab2D wpakowac 0 a on wrzuca 1 i nie wiem czemu tak jest.

PS. ponizej zamieszczem kod, i mam jeszcze pytanko jak mam tablice dynamiczna 2d to aby ja usunac wystarczy delete []tab2D czy musze zapuscic petle i usuwac najpier podtablice a potem tablice wskaznikow?
Dzieki za pomoc

// dynamiczne tablice na popranie rozmiaru z pliku 
// ustawilem 5 komurek 3 pierwsze sa na rozmiar 
// 2 sa na znaki konca lini i przejscia do nowej lini 
char *rozmiarX; rozmiarX=new char [5]; 
if (!rozmiarX) { printf("blad tworzenia tablicyX\n"); } 

char *rozmiarY; rozmiarY=new char[5]; 
if (!rozmiarY) { printf("blad tworzenia tablicyY\n"); } 

ifstream mapa; mapa.open("mapa.txt",ios::in); 
if (!mapa) { printf("ups\n"); } 
mapa.getline(rozmiarX,sizeof(rozmiarX)/sizeof(char)); 
mapa.getline(rozmiarY,sizeof(rozmiarY)/sizeof(char)); 

wymiarX+=atoi(&rozmiarX[0]); wymiarY+=atoi(&rozmiarY[0]); 

delete [] rozmiarX; delete [] rozmiarY; 

tab=new int *[wymiarX]; 

if (!tab) { printf("nie utworzyl nw\n"); } 
else { 
for (int i=0;i<wymiarX;i++){ 
if ((tab[i]=new int [wymiarY])==NULL){ 
exit(0); 
printf("nie utworzyl wymiarY\n"); 
} 
} 
} 
char *znak; 
znak=new char [wymiarX]; 
int j=0; 
while (!mapa.eof()){ 
mapa.getline(znak,sizeof(znak)+1); 
//mapa.getline(znak,sizeof(znak)+1); 
for(int i=0;i<wymiarX;i++){ 
//tab[i][j]=znak[i]; 
tab[i][j]=atoi(&znak[i]); 
} 
j++; 
//mapa.getline(znak,1); 
} 
mapa.close(); 
j=0;