Mikä ihme voi jumittaa niin, kun yritän tehdä pikku taulukkoa..:
#define byte unsigned char .. byte **table = new byte[99][99];
Tuo ei ruvennut toimimaan, Windoze vain ilmoitti laitonta viestiä ruutuun.. siis kääntäjäni toimii VC++6.0.. sitten, sain keksittyä tällaisen sorhon:
byte **table = (byte**) new byte[99][99];
Mutta ei se VC sitä käännä.. virheet olivat todella sekavia, ja ne vaihtelivat, vaikka samaa koodia vääntäisin uusiksi sille compilerille..
Muuten, eikä staattinen taulukko sovi, sitä pitäisi saada muuttumaan, ja kaiken lisäksi silläkin menetelmällä tilttasi.. :(
Hyihyi, #define on paha, käytä typedefiä. Myöskään typecastailua ei suvaita. Dynaaminen moniulotteinen taulukko tehdään allokoimalla ensin pointtereita ja sitten pointtereihin data, eli näin:
typedef unsigned char byte; byte **table = new byte *[99]; int i; for(i=0; i<99; i++) { table[i] = new byte[99]; }
Jeps, kiitos avusta! Hyvin toimii.
Aihe on jo aika vanha, joten et voi enää vastata siihen.