Was bedeutet `((void (*) ()) 0x1000) ();`? [Duplikat

Diese Frage hat hier bereits eine Antwort:

Was bedeutet C expression ((void (*) (void)) 0) (); bedeuten 5 Antworten

Hier ist ein Code, mit dem der Programmzähler so eingestellt wird, dass er zur Adresse @ spring0x1000. Ich weiß, was es tut, aber ich verstehe nicht wie. Es hängt mit meinem Mangel an C-Sprachkenntnissen zusammen. Vielleicht kannst du mich aufklären. Hier ist die Anweisung / Funktion (ich weiß nicht einmal, was es ist:))

((void (*)())0x1000)();

Ich denke, es ist ein Zeiger auf eine Funktion, die @ zurückgivoid und akzeptiert kein Argument. Bitte korrigieren Sie mich, wenn ich falsch liege.

Antworten auf die Frage(8)

Ihre Antwort auf die Frage