pointer auf Funktionen



  • 1.Deklarieren Sie einen neuen Datentyp FPointer, der einen Zeiger auf Funktionen der Form void f (int )darstellt.

    typedef struct FPointer
    
    {
    	void (*ptr)(int)
    } FPointer ;
    

    Vielen dank für eure Hilfe, ich bin grad am lernen für eine Klausur, wie ihr seht bin ich noch net weit.
    keine Ahnung wieso der }fpointer; zweimal dasteht, soll halt nur einmal sein



  • Warum so umständlich?

    typedef void (*FPointer)(int);
    

    Du hast einen Strukturtyp definiert, der einen Funktionspointer enthält.



  • ok, vielen dank,

    und wie deklariere ich ein feld, das zehn zeiger dieser form enthält,
    ohne den neuen typ zu benutzen?

    also mit dem neuen typ wäre es ja einfach

    FPointer feld[10]
    

    oder?



  • void (*a[10])(int);
    

    Logisch zwar, aber nicht ganz intuitiv. Wenn man auf Intuition wert legt, macht man das mit einem typedef 🙂


Anmelden zum Antworten