Hirdetés
- Geri Bátyó: Agglegénykonyha 2 – Főzés: szabályok, vagy szabadság?
- Brogyi: CTEK akkumulátor töltő és másolatai
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- sh4d0w: Netflix? Ugyan, VW előfizetés!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- eBay-es kütyük kis pénzért
- gban: Ingyen kellene, de tegnapra
- bambano: Bambanő háza tája
Új hozzászólás Aktív témák
-
Zsolt1
tag
Sziasztok!
Egy olyan kérdésem lenne, hogy egy rekurzív függvény hívásnál, ahol a függvény paramétere egy tömb, ott miért módosul az eredeti tömb a rekurzióból visszatérés után? Elvileg úgy lenne logikus, hogy mivel azt a tömböt csak paraméterként átadom a függvénynek rekurzív hívásnál és az ott abban a fv-ben az újonnan létrehozok egy tömböt, akkor csak odafelé adom át az értékeket, visszafele nincs módosítás, és miután lefutott a rekurzív fv., akkor a felső szinten nem változik meg a tömb tartalma. Azért nem értem a dolgot, mert pont e-miatt kell ugye változó helyett pointert használnom, ha meg akarom tartani az értéket a rekurzióból visszatérés után is.
Ez most szerintem kicsit össze-vissza lett ezért írok inkább egy példát, hogy mire gondoltam:
void rekurzivfv(int tomb[][M]) { //definiálom a fv-t és megadom paraméternek a tömböt
...függvényen belüli műveletek amik módosítják a tömb tartalmát....
rekurzivfv(tomb); //meghívom a fv-t, ami megkapja a tömböt
...itt már a tömb elemeinek értéke módosult, ahhoz képest, ami a függvény elején volt, arra
amire a rekurzió alatt változott pedig elvileg nem szabadna, mert a rekurzív fv-nél a fv újra
létrehozza a tömböt és miután a végigfutott, az innen már nem lehetne elérhető, mert
semmilyen formában nem adtam vissza...
}
Az jutott az eszembe még, hogy a teljes tömb átadásakor ott igazából tömb elejére mutató címet adom csak át (ha jól tudom), szóval olyan mintha az egy pointer lenne elvileg. Lehet, hogy az miatt módosul?
Meg lehet valahogy azt oldani, hogy ne módosuljon a rekurzív meghívás alatt az alap függvényben a tömb? Előre is köszönöm a segítséget!
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Geri Bátyó: Agglegénykonyha 2 – Főzés: szabályok, vagy szabadság?
- Linux kezdőknek
- Kamionok, fuvarozás, logisztika topik
- Windows 11
- AMD GPU-k jövője - amit tudni vélünk
- Fejhallgató erősítő és DAC topik
- Autós topik
- AMD Navi Radeon™ RX 9xxx sorozat
- Most Kína tiltotta ki a nemrég exportengedélyt kapott AI gyorsítókat?
- Nintendo Switch 2
- További aktív témák...
- Extra olcsó! HP 230 Vezetéknélküli USB-s Billentyűzet
- GeForce RTX 2060 (OEM HP) Garanciával
- BESZÁMÍTÁS! 750W Seasonic PRIME TX-750 Titanium tápegység garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 32/64GB RAM RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- Targus Universal USB 3.0 DV1K-2K Compact docking station (DisplayLink)
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest