Funktionstypen in C

Hi !
Kann mir jemand sagen, ob es in C die Moeglichkeit gibt, per „typedef“ einen Pointer auf eine bestimmte Funktionstyp mit bestimmten Parametern zu benennen ?

Ich haette gern sowas wie

typedef int (*funktion) (int parameter) Typname;

um damit dann eben Typ-korrekt entsprechende Funktionen an andere Funktionen als Parameter uebergeben zu koennen.

Das moechte mein Compiler aber nicht …

Stefan :smile:

Hallo Stefan,

die syntax ist analog zur folgenden :
typedef BOOL (FAR PASCAL * ABORTPRC) (HDC, int);

Gruss,
Frank

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Ho Stefan :wink:

Ich haette gern sowas wie

typedef int (*funktion) (int parameter)
Typname;

Du warst schon ganz nahe dran. Die Syntax stimmt so weit. Nur dass anstelle von „funktion“ der Name des Datentyps stehen muss, also:

typedef int (*Typname) (int);

Jetzt kannst du etwa mit

Typname a;

den gewuenschten Pointer deklarieren bzw. definieren.

cu Stefan.