Article View: be.comp.programming
Article #9472Re: pointers en C++
From: Staf Wagemakers
Date: Mon, 22 Apr 2002 19:07
Date: Mon, 22 Apr 2002 19:07
48 lines
2380 bytes
2380 bytes
In article <3CC447DC.228D44A5@pandora.be>, Wim wrote:
> ik ben mij door een boekje van C++ aan het worstelen maar stoot op een
> vraagje waar ik in het boek niet echt wijzer uit wordt.
>
> Wat is het nut van pointers?
> In het boek is daar een heel hoofdstuk aan besteed en ik snap alles wel
> wat er verteld wordt, maar blijkbaar is een pointer gewoon een simpele
> variabele. Niet meer en niet minder.
Een pointer is geen variabele maar een verwijzing naar een variabele.
Denk bij een pointer aan een geheugen adres, de variabele is de data
welke in het geheugen wordt opgeslagen...
Het voordeel van een pointer ( en volgens sommige ook het nadeel :) )
is dat je bv. met malloc() & realloc() meer of minder geheugen kan
toekennen afhankelijk van de hoeveelheid welke je nodig hebt.
Als je een pointer aan een functie doorgeeft wordt de variabele mee
aangepast, geeft een variabele door dan wordt er een kopie gemaakt welke
enkel in de functie geldig is. Het volgende programma illustreert dit:
#include <stdio.h>
struct brol {
void (*function)(int *i);
};
void fbrol1 (int *v) {
printf("Ik ben brol1... mijn argument is %d\n",*v);
*v=10;
}
int main() {
struct brol brol1;
int i =1;
printf ("i = %d\n",i);
brol1.function=fbrol1;
brol1.function(&i);
printf ("i = %d\n",i);
exit(0);
}
--
Staf Wagemakers
email : staf.wagemakers@advalvas.be
homepage : http://stafwag.netfirms.com
Technical Details
Message-ID:
<3cc45f63$0$24505$4d4efb8e@news.be.uu.net>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!supernews.com!isdnet!newsfeed.icl.net!newsfeed.freenet.de!bnewspeer01.bru.ops.eu.uu.net!bnewsifeed01.bru.ops.eu.uu.net!bnewspost00.bru.ops.eu.uu.net!emea.uu.net!news.be.uu.net!not-for-mailReferences:
<3CC447DC.228D44A5@pandora.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,ea74698934c6a2dc X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2002-04-22 12:07:46 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!supernews.com!isdnet!newsfeed.icl.net!newsfeed.freenet.de!bnewspeer01.bru.ops.eu.uu.net!bnewsifeed01.bru.ops.eu.uu.net!bnewspost00.bru.ops.eu.uu.net!emea.uu.net!news.be.uu.net!not-for-mail Newsgroups: be.comp.programming From: Staf Wagemakers <stafwag@yahoo.com> Subject: Re: pointers en C++ References: <3CC447DC.228D44A5@pandora.be> Organization: Debian GNU/Linux (woody) User-Agent: slrn/0.9.7.3 (Linux) Date: 22 Apr 2002 19:07:15 GMT Lines: 48 Message-ID: <3cc45f63$0$24505$4d4efb8e@news.be.uu.net> NNTP-Posting-Host: uu212-190-114-162.unknown.uunet.be X-Trace: 1019502435 news.be.uu.net 24505 212.190.114.162 X-Complaints-To: abuse@be.uu.net