Hirdetés
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Vandit.: Milyen zenét hallgattok most?
- gban: Ingyen kellene, de tegnapra
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Depression: R.I.P.
- Luck Dragon: Óraátállítás
- hcl: GPT diszk kisebbre klónozása
Ú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!
- ASZTALI GÉP / ALKATRÉSZ beárazás
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Lexus, Toyota topik
- Steam topic
- Elektromos cigaretta 🔞
- OLED monitor topic
- Vandit.: Milyen zenét hallgattok most?
- Vezetékes FEJhallgatók
- Filmvilág
- Hardcore café
- További aktív témák...
- DDR5 Gamer PC - i5 14400f, RTX 3070 Ti, 1 TB SSD, Z 790-S Wifi
- Ryzen esportpc(ryzen3 -4100/RX580-8gb/SSD/hdd)
- Prémium! Gamer PC-Számítógép! Csere-Beszámítás! Rog C VIII / R9 3950X / RTX 3080 / 1TB SSD / 32GB
- Samsung galaxy watch 7 44mm (ezüst) + 1.5 év garancia
- iPhone 15 Plus 128GB gyári független normál állapot
- iPhone 13 Pro 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS4598, 100% Akkumulátor
- BESZÁMÍTÁS! Részletfizetés 0% THM ÚJ GIGABYTE A16 3VH 16" notebook R7 260 16GB RTX 5060 3 év 27%
- Intel Core i9-10850K 10-Core 3.6GHz LGA1200 (20M Cache, up to 5.20 GHz)
- 32GB DDR4 so-dimm laptop RAM 3200MHz 2666MHz
- Új HP 15 Victus FHD IPS 144Hz i7-13620H 4.9Ghz 10mag 16GB 1TB SSD Nvidia RTX 5060 8GB Win11 Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

