Ich habe gesucht, konnte aber keine Ergebnisse finden (meine Terminologie kann aus sein) so verzeihen Sie mir, wenn dies vorher gefragt wurde.Nennen Sie eine void * als eine Funktion, ohne einen Funktionszeiger zu deklarieren
Ich frage mich, ob es eine einfache Möglichkeit gibt, eine void*
als eine Funktion in C aufzurufen, ohne zuerst einen Funktionszeiger zu deklarieren und dann dem Funktionszeiger die Adresse zuzuweisen;
dh. die Funktion unter der Annahme, Typ aufgerufen werden soll void(void)
void *ptr;
ptr = <some address>;
((void*())ptr)(); /* call ptr as function here */
mit dem obigen Code, ich Fehler C2066 erhalten: Gusstyp funktioniert illegal ist in VC2008
Wenn dies möglich ist, wie würde die Syntax abweichen für Funktionen mit Rückgabetypen und mehreren Parametern?
Genau das, was ich gesucht habe, danke. –