Path: utzoo!news-server.csri.toronto.edu!rutgers!ucsd!dog.ee.lbl.gov!elf.ee.lbl.gov!torek From: torek@elf.ee.lbl.gov (Chris Torek) Newsgroups: comp.lang.c Subject: Re: More Pointers ... Message-ID: <10955@dog.ee.lbl.gov> Date: 14 Mar 91 23:50:33 GMT References: <1991Mar13.161322.8214@uunet.uu.net> Reply-To: torek@elf.ee.lbl.gov (Chris Torek) Organization: Lawrence Berkeley Laboratory, Berkeley Lines: 36 X-Local-Date: Thu, 14 Mar 91 15:50:34 PST In article <1991Mar13.161322.8214@uunet.uu.net> karln!karln@uunet.uu.net (Karl Nicholas) writes: > int Board[3][3]; > init_board( Board ); >init_board ( Board ) >int (*Board)[3][3]; Someone else posted an incomplete followup that is likely to provoke all sorts of noise. The declaration in init_board here is incorrect; it must be one of: int (*Board)[3]; /* I recommend this over all others. */ or: int Board[][3]; or: int Board[3][3]; You may get away with int Board[99][3]; or other bogus values in the first dimension, but I would advise against it even if ANSI X3.159-1989 permits it (I do not know whether it does). I recommend the first format because it is the least misleading. See the Frequently Asked Questions for discussion as to why the first declaration is correct. -- In-Real-Life: Chris Torek, Lawrence Berkeley Lab EE div (+1 415 486 5427) Berkeley, CA Domain: torek@ee.lbl.gov