Wenn ich ein typedef
für eine bestimmte Art erklären wollte, würde ich für eine Syntax wie diese geht in diesem Beispiel:Funktionszeiger Mit typedef in C
typedef int INT
Aber wenn ich ein typedef
schaffen wollte für eine Funktion, erwartete ich die folgende Syntax, der zu sein:
typedef void (*)(int, char) myfunc;
Statt die richtige ist:
typedef void (*myfunc)(int, char);
Warum also der erste nicht korrekt ist?
Werfen Sie einen Blick auf [diese Antwort] (https://stackoverflow.com/a/30345939/4265352). Es erklärt, wie die Deklarationen von C-Variablen und Typen gelesen werden. – axiac
Der Typdef ist unwesentlich. So definieren Sie Variablen des Typs. – StoryTeller
@StoryTeller Dies ist kein exaktes Duplikat, es fragt nach der Deklarationssyntax für Funktionszeiger, nicht über * typedef * -Deklarationen. –