From: "Dave Bird---ARS HakeMonger ,,,,><_'>.,,,<_\",,,," Newsgroups: comp.os.msdos.djgpp Subject: Re: Q: How does a pointer work and when do you need it? Date: Sat, 29 May 1999 20:39:19 +0100 Organization: very little Message-ID: References: <7iof2p$l3e$1 AT news DOT news-service DOT com> NNTP-Posting-Host: xemu.demon.co.uk X-NNTP-Posting-Host: xemu.demon.co.uk:158.152.196.209 X-Trace: news.demon.co.uk 928050350 nnrp-11:19873 NO-IDENT xemu.demon.co.uk:158.152.196.209 X-Complaints-To: abuse AT demon DOT net MIME-Version: 1.0 X-Newsreader: Turnpike (32) Version 4.01 Lines: 60 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com In article <7iof2p$l3e$1 AT news DOT news-service DOT com>, SufMan writes >Please.. Can someone help me?? >Q: How does a pointer work and when do you need it? That is a big subject, and you might want to try a textbook. An ordinary, say, integer variable contains an integer value: int x1; x1=10000; address of x1 is FF208 ---- FF208 [ 10000 ] FF20C \ ff210 value contained there is 10000 . If it is a pointer to integer, it contains the address of another variable: int *px; px = &x1; address of px is FF340 --- FF340 [FF208 ] FF344 \ FF348 value contained there is FF208 the address of x1. If you write *px=27; the value 27 is put at the address contained in px, that is it is stored in x1. Normally parameters are passed to functions BY VALUE. If you want y=sqrt(x1), when x1 is 10000, then sqrt() is passed a copy of the value 10000 and returns the answer 100 to be stored in y. It does not need to know about the location of x1, it does not need to, it cannot change what is stored there. If you want a function to, say, double the contents of a specified variable, then you have to send the address of it: void doubleVar(int *px){ (*px) = (*px) * 2; }; doubleVar(&x1); // this will double the value in x1. The same if you want to tell your function to put results in 3 or 4 different variables specified by the caller, you have to send their addresses. There are other uses concerning arrays & strings, but a textbook is the place top look for them. -- Dave Bird, an official ARS HakeMonger ><_'> <_" (licensed to mung pelagic fish and clams of all kinds upon the Internet) "If prozac be the food of clams, Lay on MacErrel and, by damn, Cry HADDOCK and let loose the cods of war!" Wm Skatesfin