Kezdőoldal » Számítástechnika » Programozás » C-ben függvényben hogyan...

C-ben függvényben hogyan módosítható paraméterként átadott struktúra?

Figyelt kérdés

Legyen egy struktúrám, S.

S-nek van egy int tagja, num.


A feladat értéket adni num-nak egy függvényben, aminek paramétere S és egy egész szám, amit értékül adunk num-nak, pl.


f(S s, int n)


Ha a struktúra memória címét, egy pointert adtam át (más ekkor a függvény szignatúrája), akkor meg tudtam oldani, de így nem sikerül. (Visszatérési érték nem lehet a módosított struktúra, hanem egy int, ami 1, ha sikerült, 0, ha nem sikerült)



2019. febr. 26. 16:15
 1/4 anonim ***** válasza:

"Ha a struktúra memória címét, egy pointert adtam át (más ekkor a függvény szignatúrája), akkor meg tudtam oldani"

Akkor mi a probléma? Úgy csináltad, ahogy kell.

2019. febr. 26. 16:32
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:

"(Visszatérési érték nem lehet a módosított struktúra, hanem egy int, ami 1, ha sikerült, 0, ha nem sikerült)"


Tisztázzunk valamit: Ha C-ben egy függvénynek átadsz valamit, akkor az lemásolódik és azzal dolgozik tovább a függvény. Ha te visszaadsz egy ugyanolyan objektumot utána a függvénnyel, akkor lesz egy harmadik példányod is.


A feladatot ezzel a kitétellel csak úgy tudod megoldani, ha a függvénynek a memóriacímét adod át, magyarul a pointerek felé kell nézelődnöd. Ha jól értem, akkor így is csináltad, szóval mi a probléma?

2019. febr. 26. 18:34
Hasznos számodra ez a válasz?
 3/4 anonim ***** válasza:
Gondolom az a problémája, hogy a feladat kiírója tette közzé a függvény szignatúráját f(S s, int n) formában. Ha így van, akkor nem tehetsz semmit. Vagy félreolvastál valamit. Vagy pointer, vagy return kell, anélkül nem megy C-ben.
2019. febr. 26. 21:40
Hasznos számodra ez a válasz?
 4/4 A kérdező kommentje:
Köszi a válaszokat :) igen, valószínűleg én néztem el; emlékszek, hogy a tanár egy másik függvénynél kiemelte, hogy ott pointert kell használni, de gondolom, azt mindre értette. Csak nem láttam a *-ot.
2019. febr. 26. 22:48

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!