[elektro] C typedef kérdés

Rancz Lajos csiga at fosch.com
Thu Apr 24 19:47:17 CEST 2008


Szia!

Gondolom függvényre mutató pointerekkel akarsz jászani, pl. egy táblából 
index alapján függvény hívni. Ezt function pointer-nek hívják, van róla 
szakirodalom pl itt:
http://www.newty.de/fpt/

Ami neked kell:
// Solution using a typedef: Define a pointer to a function which is taking
// two floats and returns a float
typedef int(*FuncPtr)(int,int);

Ekkor a FuncPtr egy pointer típus ami két intet evő és egy intet 
visszadó függvényre mutat. Van egy függvényed:
int Add(int a, int b)
{
    return a+b;
}

Értékadás a pointernek:
FuncPtr ptr = Add;

Hívás:
int c = ptr(1,2);

Na, remélem segítettem. A fenti oldalt érdemes olvasgatni :-)

Üdv,
Lajos

hg12345 írta:
> Hi!
>
> egy typedef-vel definiált függvényt hogy lehet korrekten meghatározni?
> (Nem értem...) Aki érti segitsen :-)
>
> adott
>
> typedef   (CondFunc)(int i, int*p);
>
> akkor a függvény-t a következő képpen kéne meghatároznom:
>
> CondFunc   AlrCond {};
>
> A forditó hiányolja a normál zárojeleket, de 
>
> CondFunc AlrCond ;
> függvény hivatkozást simán elfogadja.
>
> CondFunc AlrCond(int i, int*p)
> {};
> már hibátlanul fordítja.
>
> A typedef-ben eszerint a meghatározás lényegtelen?
>
>  
>
>
> ________________________________________________________
> AKCIÓS árak-ORSZÁGOS házhozszállítás-VIDEÓ termékbemutató
>
>  
>
> AEG-ELECTROLUX beépíthető gépek,mosogatógépek,mosógépek,hűtők
>
>  
>
> Raktárról azonnal az AEGshop.hu-tól
>
> http://ad.adverticum.net/b/cl,1,6022,259982,311010/click.prm
>
> -----------------------------------------
>           elektro[-flame|-etc]
>   



More information about the Elektro mailing list