🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #545

Re: rekurencja a pamiec ?

#545
From: Marek Kotowski
Date: Mon, 05 Jan 1998 09:00
25 lines
1580 bytes
Micha³ Suski wrote:
> 
> Piszê w³a¶nie program korzystaj±cy z rekurencji, ale niestety po 125
> zag³êbieniach wszystko pada, najprawdopodobniej z braku pamiêci.
> Najprawdopodobniej, bo komputer siê wiesza, a raczej emm286 stwierdza jaki¶
> b³±d i go zawiesza. Jak sprawdzaæ ilo¶æ dostêpnej pamiêci, dodam, ¿e
> coreleft() nie pomaga, bo stwierdza, ¿e jest jej ca³a masa. Z góry
> dziêkujê.
> --

  Prawdopodobnie chodzi o pamiec alokowana na stosie.
Kazde wywolanie rekurencyjne powoduje alokowanie nowej
pamieci na stosie na adres powrotu, argumenty przekazane
w wywolaniu funkcji, zmienne lokalne. Rozwiazaniem moze
byc zwiekszenie ilosci pamieci przeznaczonej na stos
(linker) lub jesli wywolan funkcji rekurencyjnej ma byc
bardzo duzo - stworzenie w pamieci statycznej buforow
do przechowywania zmiennych lokalnych (trzeba oczywiscie
zaprojektowac mechanizm korzystania z tych buforow).
Jesli i to nie pomoze, trzeba przejsc na wersje iteracyjna
obliczen.

HTH.

Marek Kotowski
Technical Details
Message-ID: <34B0A14B.2B27@imm.org.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!news.nask.pl!not-for-mail
References: <01bd189a$8c52aaa0$LocalHost@suseu>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!news.nask.pl!not-for-mail
From: Marek Kotowski <mkot@imm.org.pl>
Newsgroups: pl.comp.lang.c
Subject: Re: rekurencja a pamiec ?
Date: Mon, 05 Jan 1998 10:00:59 +0100
Organization: Instytut Maszyn Matematycznych
Lines: 25
Message-ID: <34B0A14B.2B27@imm.org.pl>
References: <01bd189a$8c52aaa0$LocalHost@suseu>
NNTP-Posting-Host: 148.81.238.53
Mime-Version: 1.0
X-Mailer: Mozilla 3.01Gold (Win95; I)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit