From: "Red Angel" Newsgroups: comp.os.msdos.djgpp Subject: R: Dinamic allocation Date: Sun, 20 Jun 1999 00:25:07 +0200 Organization: Customer of Flashnet S.p.A. - http://www.flashnet.it Lines: 92 Message-ID: <7kh5jo$9cq$1@news.flashnet.it> References: NNTP-Posting-Host: pppn-22.to2.flashnet.it X-Trace: news.flashnet.it 929831352 9626 195.191.110.26 (19 Jun 1999 22:29:12 GMT) X-Complaints-To: abuse AT flashnet DOT it NNTP-Posting-Date: 19 Jun 1999 22:29:12 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Try this: char **spans; spans = (char **) malloc(MAXHEIGHT*sizeof(char*)); for(i=0; i wrote in message LOBBKLEPLBKLOKFELHOIAELGCCAA DOT djgpp AT niemeyer DOT net... > Thank you for your answer Antonio! > > I had to change some thing in your code to > compile it. Code now looks like this: > > char **spans; > > spans = (char **) malloc(MAXHEIGHT); > > for(i=0; i spans[i] = (char *) malloc(MAXWIDTH); > > > But it isn't working anyway! I tried to delete the > second line but it didn't work again... > > By the way, I can't understand why the old code isn't > working... > > > Thank you! > > > Gustavo Niemeyer > > > -----Original Message----- > From: Antonius Steinkamp [mailto:Antonius DOT Steinkamp AT t-online DOT de] > Sent: Sexta-feira, 18 de Junho de 1999 22:34 > To: djgpp AT delorie DOT com > Subject: Re: Dinamic allocation > > > try to allocate this way > spans = (char*)malloc(MAXHEIGHT) > for ( int i=0; i spans[i] = (char)malloc(MAXWIDTH); > } > this is not tested but should work (aka indexes) > > Gustavo Niemeyer schrieb: > > > > Hi there! > > > > I think I'm doing some thing wrong here. > > > > When I try to hard code an array like this: > > > > char spans[MAXHEIGHT][MAXWIDTH]; > > > > So the program runs ok. But when I try to > > use dinamic memory allocation like this: > > > > char **spans; > > spans = (char **) malloc(MAXWIDTH*MAXHEIGHT*sizeof(char)); > > > > When I run the program it prints a General > > protection fault error, pointing to a loop > > that accesses the array. > > > > Probably is something I'm missing... isn't it? > > > > Thank you > > > > Gustavo Niemeyer >